{
    "openapi": "3.0.0",
    "info": {
        "title": "Merchant API Documentation",
        "description": "General Guidelines\n- Shops merchant api setting must be enabled.\n- All string data must be valid UTF-8\n- Authorization must be made with header Authorization Bearer token\n- All post/patch requests must be made as multipart/form-data",
        "contact": {
            "email": "tolga@ctrlf5.com.tr"
        },
        "license": {
            "name": "Apache 2.0",
            "url": "http://www.apache.org/licenses/LICENSE-2.0.html"
        },
        "version": "1.0.0"
    },
    "servers": [
        {
            "url": "https://kolaysiparis.com.tr",
            "description": "API Server"
        }
    ],
    "paths": {
        "/merchant-api/shops/{shop_unique_id}/additional-services": {
            "get": {
                "tags": [
                    "Additional Services"
                ],
                "summary": "Get a list of additional services with pagination.",
                "operationId": "additional-services-list",
                "parameters": [
                    {
                        "name": "shop_unique_id",
                        "in": "path",
                        "description": "Perform action on the shop which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "sort",
                        "in": "query",
                        "description": "Sorting is ascending by default and can be reversed by adding a hyphen (-) to the start of the property name.",
                        "explode": false,
                        "schema": {
                            "type": "array",
                            "items": {
                                "type": "string",
                                "enum": [
                                    "id",
                                    "-id",
                                    "created_at",
                                    "-created_at",
                                    "updated_at",
                                    "-updated_at",
                                    "title",
                                    "-title",
                                    "status",
                                    "-status",
                                    "requested",
                                    "-requested"
                                ]
                            }
                        }
                    },
                    {
                        "name": "page",
                        "in": "query",
                        "description": "Starts from 1",
                        "schema": {
                            "type": "int32",
                            "default": "1"
                        }
                    },
                    {
                        "name": "per_page",
                        "in": "query",
                        "description": "Paginate by, min 5, max 50. Default 50.",
                        "schema": {
                            "type": "int32",
                            "default": "50"
                        }
                    },
                    {
                        "name": "filter[title]",
                        "in": "query",
                        "description": "Search within titles",
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "filter[status]",
                        "in": "query",
                        "schema": {
                            "type": "boolean"
                        }
                    },
                    {
                        "name": "filter[requested]",
                        "in": "query",
                        "schema": {
                            "type": "boolean"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/PaginatedAdditionalServiceResource"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Unauthenticated",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "Forbidden",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Resource Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearer_token": {}
                    }
                ]
            }
        },
        "/merchant-api/shops/{shop_unique_id}/additional-services/{additional_service_unique_id}/request": {
            "get": {
                "tags": [
                    "Additional Services"
                ],
                "summary": "Make additional service request.",
                "operationId": "additional-services-request",
                "parameters": [
                    {
                        "name": "shop_unique_id",
                        "in": "path",
                        "description": "Perform action on the shop which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "additional_service_unique_id",
                        "in": "path",
                        "description": "Perform action on the additional service which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/AdditionalServiceResource"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Unauthenticated",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "Forbidden",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Resource Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearer_token": {}
                    }
                ]
            }
        },
        "/merchant-api/shops/{shop_unique_id}/announcements": {
            "get": {
                "tags": [
                    "Announcements"
                ],
                "summary": "Get a list of announcements with pagination.",
                "operationId": "announcements-list",
                "parameters": [
                    {
                        "name": "shop_unique_id",
                        "in": "path",
                        "description": "Perform action on the shop which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "sort",
                        "in": "query",
                        "description": "Sorting is ascending by default and can be reversed by adding a hyphen (-) to the start of the property name.",
                        "explode": false,
                        "schema": {
                            "type": "array",
                            "items": {
                                "type": "string",
                                "enum": [
                                    "id",
                                    "-id",
                                    "created_at",
                                    "-created_at",
                                    "updated_at",
                                    "-updated_at",
                                    "order",
                                    "-order",
                                    "is_active",
                                    "-is_active",
                                    "is_home",
                                    "-is_home",
                                    "is_category",
                                    "-is_category",
                                    "is_basket",
                                    "-is_basket"
                                ]
                            }
                        }
                    },
                    {
                        "name": "page",
                        "in": "query",
                        "description": "Starts from 1",
                        "schema": {
                            "type": "int32",
                            "default": "1"
                        }
                    },
                    {
                        "name": "per_page",
                        "in": "query",
                        "description": "Paginate by, min 5, max 50. Default 50.",
                        "schema": {
                            "type": "int32",
                            "default": "50"
                        }
                    },
                    {
                        "name": "filter[text]",
                        "in": "query",
                        "description": "Search within text",
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "filter[is_active]",
                        "in": "query",
                        "schema": {
                            "type": "boolean"
                        }
                    },
                    {
                        "name": "filter[is_home]",
                        "in": "query",
                        "schema": {
                            "type": "boolean"
                        }
                    },
                    {
                        "name": "filter[is_category]",
                        "in": "query",
                        "schema": {
                            "type": "boolean"
                        }
                    },
                    {
                        "name": "filter[is_basket]",
                        "in": "query",
                        "schema": {
                            "type": "boolean"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/PaginatedAnnouncementResource"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Unauthenticated",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "Forbidden",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Resource Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearer_token": {}
                    }
                ]
            },
            "post": {
                "tags": [
                    "Announcements"
                ],
                "summary": "Create an announcement.",
                "operationId": "announcements-create",
                "parameters": [
                    {
                        "name": "shop_unique_id",
                        "in": "path",
                        "description": "Perform action on the shop which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "multipart/form-data": {
                            "schema": {
                                "allOf": [
                                    {
                                        "$ref": "#/components/schemas/AnnouncementCreateRequest"
                                    }
                                ]
                            },
                            "encoding": {
                                "category_ids[]": {
                                    "contentType": "text/plain",
                                    "explode": true
                                }
                            }
                        }
                    }
                },
                "responses": {
                    "201": {
                        "description": "Successful operation",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/AnnouncementResource"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Unauthenticated",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "Forbidden",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Resource Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Unprocessable Entity",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/UnprocessableEntityErrorResource"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearer_token": {}
                    }
                ]
            }
        },
        "/merchant-api/shops/{shop_unique_id}/announcements/{announcement_unique_id}": {
            "get": {
                "tags": [
                    "Announcements"
                ],
                "summary": "Get an announcement.",
                "operationId": "announcements-get",
                "parameters": [
                    {
                        "name": "shop_unique_id",
                        "in": "path",
                        "description": "Perform action on the shop which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "announcement_unique_id",
                        "in": "path",
                        "description": "Perform action on the announcement which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/AnnouncementResource"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Unauthenticated",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "Forbidden",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Resource Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearer_token": {}
                    }
                ]
            },
            "delete": {
                "tags": [
                    "Announcements"
                ],
                "summary": "Delete an announcement.",
                "operationId": "announcements-delete",
                "parameters": [
                    {
                        "name": "shop_unique_id",
                        "in": "path",
                        "description": "Perform action on the shop which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "announcement_unique_id",
                        "in": "path",
                        "description": "Perform action on the announcement which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "204": {
                        "description": "Successful operation"
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Unauthenticated",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "Forbidden",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Resource Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearer_token": {}
                    }
                ]
            },
            "patch": {
                "tags": [
                    "Announcements"
                ],
                "summary": "Update an announcement.",
                "operationId": "announcements-update",
                "parameters": [
                    {
                        "name": "shop_unique_id",
                        "in": "path",
                        "description": "Perform action on the shop which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "announcement_unique_id",
                        "in": "path",
                        "description": "Perform action on the announcement which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "multipart/form-data": {
                            "schema": {
                                "allOf": [
                                    {
                                        "$ref": "#/components/schemas/AnnouncementUpdateRequest"
                                    }
                                ]
                            },
                            "encoding": {
                                "category_ids[]": {
                                    "contentType": "text/plain",
                                    "explode": true
                                }
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Successful operation",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/AnnouncementResource"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Unauthenticated",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "Forbidden",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Resource Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Unprocessable Entity",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/UnprocessableEntityErrorResource"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearer_token": {}
                    }
                ]
            }
        },
        "/merchant-api/shops/{shop_unique_id}/announcements/{announcement_unique_id}/mirror-patch": {
            "post": {
                "tags": [
                    "Announcements"
                ],
                "summary": "Update an announcement.",
                "operationId": "announcements-updateMirrorPatch",
                "parameters": [
                    {
                        "name": "shop_unique_id",
                        "in": "path",
                        "description": "Perform action on the shop which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "announcement_unique_id",
                        "in": "path",
                        "description": "Perform action on the announcement which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "multipart/form-data": {
                            "schema": {
                                "allOf": [
                                    {
                                        "$ref": "#/components/schemas/AnnouncementUpdateRequest"
                                    }
                                ]
                            },
                            "encoding": {
                                "category_ids[]": {
                                    "contentType": "text/plain",
                                    "explode": true
                                }
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Successful operation",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/AnnouncementResource"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Unauthenticated",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "Forbidden",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Resource Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Unprocessable Entity",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/UnprocessableEntityErrorResource"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearer_token": {}
                    }
                ]
            }
        },
        "/merchant-api/auth/login": {
            "post": {
                "tags": [
                    "Auth"
                ],
                "summary": "Login with merchant credentials to get api token. Token ttl 1 week. Refresh ttl is 2 weeks.",
                "operationId": "auth-login",
                "requestBody": {
                    "required": true,
                    "content": {
                        "multipart/form-data": {
                            "schema": {
                                "allOf": [
                                    {
                                        "$ref": "#/components/schemas/LoginRequest"
                                    }
                                ]
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Successful operation",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/AuthResource"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Unauthenticated",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "Forbidden",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Resource Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Unprocessable Entity",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/UnprocessableEntityErrorResource"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearer_token": {}
                    }
                ]
            }
        },
        "/merchant-api/auth/logout": {
            "post": {
                "tags": [
                    "Auth"
                ],
                "summary": "Invalidates api token and unsubscribes from notifications.",
                "operationId": "auth-logout",
                "responses": {
                    "204": {
                        "description": "No content"
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Unauthenticated",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "Forbidden",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Resource Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearer_token": {}
                    }
                ]
            }
        },
        "/merchant-api/auth/register": {
            "post": {
                "tags": [
                    "Auth"
                ],
                "summary": "Register as merchant.",
                "operationId": "auth-register",
                "requestBody": {
                    "required": true,
                    "content": {
                        "multipart/form-data": {
                            "schema": {
                                "allOf": [
                                    {
                                        "$ref": "#/components/schemas/MerchantRegisterRequest"
                                    }
                                ]
                            }
                        }
                    }
                },
                "responses": {
                    "201": {
                        "description": "Resource created",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/AuthResource"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Unauthenticated",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "Forbidden",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Resource Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Unprocessable Entity",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/UnprocessableEntityErrorResource"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearer_token": {}
                    }
                ]
            }
        },
        "/merchant-api/auth/refresh-token": {
            "post": {
                "tags": [
                    "Auth"
                ],
                "summary": "Refresh token.",
                "operationId": "auth-refresh-token",
                "requestBody": {
                    "required": true,
                    "content": {
                        "multipart/form-data": {
                            "schema": {
                                "allOf": [
                                    {
                                        "$ref": "#/components/schemas/MerchantRefreshTokenRequest"
                                    }
                                ]
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Resource successful",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/AuthResource"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Unauthenticated",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "Forbidden",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Resource Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Unprocessable Entity",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/UnprocessableEntityErrorResource"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearer_token": {}
                    }
                ]
            }
        },
        "/merchant-api/auth/send-reset-link-email": {
            "post": {
                "tags": [
                    "Auth"
                ],
                "summary": "Send reset password link to merchant email address.",
                "operationId": "auth-sendResetLinkEmail",
                "requestBody": {
                    "required": true,
                    "content": {
                        "multipart/form-data": {
                            "schema": {
                                "allOf": [
                                    {
                                        "$ref": "#/components/schemas/SendResetLinkEmailRequest"
                                    }
                                ]
                            }
                        }
                    }
                },
                "responses": {
                    "204": {
                        "description": "Successful operation"
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Unauthenticated",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "Forbidden",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Resource Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Unprocessable Entity",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/UnprocessableEntityErrorResource"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearer_token": {}
                    }
                ]
            }
        },
        "/merchant-api/shops/{shop_unique_id}/blog-categories": {
            "get": {
                "tags": [
                    "Blog Categories"
                ],
                "summary": "Get a list of blog categories with pagination.",
                "operationId": "blog-categories-list",
                "parameters": [
                    {
                        "name": "shop_unique_id",
                        "in": "path",
                        "description": "Perform action on the shop which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "page",
                        "in": "query",
                        "description": "Starts from 1",
                        "required": false,
                        "explode": false,
                        "schema": {
                            "type": "int32",
                            "default": "1"
                        }
                    },
                    {
                        "name": "per_page",
                        "in": "query",
                        "description": "Paginate by, min 5, max 50. Default 50.",
                        "required": false,
                        "schema": {
                            "type": "int32",
                            "default": "50"
                        }
                    },
                    {
                        "name": "filter[trashed]",
                        "in": "query",
                        "description": "Archive status. Options are `live`, `only`, `with`. `live` means only non archived items. `only` means only archived items. `with` means archived and live items.",
                        "required": false,
                        "schema": {
                            "type": "string",
                            "default": "live"
                        }
                    },
                    {
                        "name": "filter[is_active]",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "boolean",
                            "default": true
                        }
                    },
                    {
                        "name": "filter[title]",
                        "in": "query",
                        "description": "Search within category titles",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/PaginatedBlogCategoryResource"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Unauthenticated",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "Forbidden",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Resource Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearer_token": {}
                    }
                ]
            },
            "post": {
                "tags": [
                    "Blog Categories"
                ],
                "summary": "Create a blog category.",
                "operationId": "blog-categories-create",
                "parameters": [
                    {
                        "name": "shop_unique_id",
                        "in": "path",
                        "description": "Perform action on the shop which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "multipart/form-data": {
                            "schema": {
                                "allOf": [
                                    {
                                        "$ref": "#/components/schemas/BlogCategoryCreateRequest"
                                    }
                                ]
                            }
                        }
                    }
                },
                "responses": {
                    "201": {
                        "description": "Successful operation",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/BlogCategoryResource"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Unauthenticated",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "Forbidden",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Resource Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Unprocessable Entity",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/UnprocessableEntityErrorResource"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearer_token": {}
                    }
                ]
            }
        },
        "/merchant-api/shops/{shop_unique_id}/blog-categories/{category_unique_id}": {
            "get": {
                "tags": [
                    "Blog Categories"
                ],
                "summary": "Get a blog category.",
                "operationId": "blog-categories-get",
                "parameters": [
                    {
                        "name": "shop_unique_id",
                        "in": "path",
                        "description": "Perform action on the shop which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "category_unique_id",
                        "in": "path",
                        "description": "Perform action on the category which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/BlogCategoryResource"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Unauthenticated",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "Forbidden",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Resource Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearer_token": {}
                    }
                ]
            },
            "delete": {
                "tags": [
                    "Blog Categories"
                ],
                "summary": "Delete a blog category.",
                "operationId": "blog-categories-delete",
                "parameters": [
                    {
                        "name": "shop_unique_id",
                        "in": "path",
                        "description": "Perform action on the shop which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "category_unique_id",
                        "in": "path",
                        "description": "Perform action on the category which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "204": {
                        "description": "Successful operation"
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Unauthenticated",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "Forbidden",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Resource Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearer_token": {}
                    }
                ]
            },
            "patch": {
                "tags": [
                    "Blog Categories"
                ],
                "summary": "Update a blog category.",
                "operationId": "blog-categories-update",
                "parameters": [
                    {
                        "name": "shop_unique_id",
                        "in": "path",
                        "description": "Perform action on the shop which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "category_unique_id",
                        "in": "path",
                        "description": "Perform action on the category which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "multipart/form-data": {
                            "schema": {
                                "allOf": [
                                    {
                                        "$ref": "#/components/schemas/BlogCategoryUpdateRequest"
                                    }
                                ]
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Successful operation",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/BlogCategoryResource"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Unauthenticated",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "Forbidden",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Resource Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Unprocessable Entity",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/UnprocessableEntityErrorResource"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearer_token": {}
                    }
                ]
            }
        },
        "/merchant-api/shops/{shop_unique_id}/blog-categories/order": {
            "put": {
                "tags": [
                    "Blog Categories"
                ],
                "summary": "Update blog categories order.",
                "operationId": "blog-categories-order",
                "parameters": [
                    {
                        "name": "shop_unique_id",
                        "in": "path",
                        "description": "Perform action on the shop which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "category_unique_ids": {
                                        "type": "array",
                                        "items": {
                                            "type": "string"
                                        }
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Successful operation",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Unauthenticated",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "Forbidden",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Resource Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Unprocessable Entity",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/UnprocessableEntityErrorResource"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearer_token": {}
                    }
                ]
            }
        },
        "/merchant-api/shops/{shop_unique_id}/blog-categories/{category_unique_id}/field": {
            "patch": {
                "tags": [
                    "Blog Categories"
                ],
                "summary": "Update a single field of a blog category.",
                "operationId": "blog-categories-update-field",
                "parameters": [
                    {
                        "name": "shop_unique_id",
                        "in": "path",
                        "description": "Perform action on the shop which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "category_unique_id",
                        "in": "path",
                        "description": "Perform action on the category which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "field": {
                                        "type": "string",
                                        "enum": [
                                            "is_active"
                                        ]
                                    },
                                    "value": {
                                        "oneOf": [
                                            {
                                                "type": "string"
                                            },
                                            {
                                                "type": "boolean"
                                            },
                                            {
                                                "type": "integer"
                                            }
                                        ]
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Successful operation",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "field": {
                                            "type": "string"
                                        },
                                        "value": {
                                            "oneOf": [
                                                {
                                                    "type": "string"
                                                },
                                                {
                                                    "type": "boolean"
                                                },
                                                {
                                                    "type": "integer"
                                                }
                                            ]
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Unauthenticated",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "Forbidden",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Resource Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Unprocessable Entity",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/UnprocessableEntityErrorResource"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearer_token": {}
                    }
                ]
            }
        },
        "/merchant-api/shops/{shop_unique_id}/blog-posts": {
            "get": {
                "tags": [
                    "Blog Posts"
                ],
                "summary": "Get a list of blog posts with pagination.",
                "operationId": "blog-posts-list",
                "parameters": [
                    {
                        "name": "shop_unique_id",
                        "in": "path",
                        "description": "Perform action on the shop which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "page",
                        "in": "query",
                        "description": "Starts from 1",
                        "required": false,
                        "explode": false,
                        "schema": {
                            "type": "int32",
                            "default": "1"
                        }
                    },
                    {
                        "name": "per_page",
                        "in": "query",
                        "description": "Paginate by, min 5, max 50. Default 50.",
                        "required": false,
                        "schema": {
                            "type": "int32",
                            "default": "50"
                        }
                    },
                    {
                        "name": "filter[trashed]",
                        "in": "query",
                        "description": "Archive status. Options are `live`, `only`, `with`. `live` means only non archived items. `only` means only archived items. `with` means archived and live items.",
                        "required": false,
                        "schema": {
                            "type": "string",
                            "default": "live"
                        }
                    },
                    {
                        "name": "filter[is_active]",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "boolean",
                            "default": true
                        }
                    },
                    {
                        "name": "filter[title]",
                        "in": "query",
                        "description": "Search within blog post titles",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "filter[categories.id]",
                        "in": "query",
                        "description": "Filter by category ID",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/PaginatedBlogPostResource"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Unauthenticated",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "Forbidden",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Resource Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearer_token": {}
                    }
                ]
            },
            "post": {
                "tags": [
                    "Blog Posts"
                ],
                "summary": "Create a blog post.",
                "operationId": "blog-posts-create",
                "parameters": [
                    {
                        "name": "shop_unique_id",
                        "in": "path",
                        "description": "Perform action on the shop which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "multipart/form-data": {
                            "schema": {
                                "allOf": [
                                    {
                                        "$ref": "#/components/schemas/BlogPostCreateRequest"
                                    }
                                ]
                            },
                            "encoding": {
                                "category_unique_ids[]": {
                                    "explode": true
                                }
                            }
                        }
                    }
                },
                "responses": {
                    "201": {
                        "description": "Successful operation",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/BlogPostResource"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Unauthenticated",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "Forbidden",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Resource Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Unprocessable Entity",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/UnprocessableEntityErrorResource"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearer_token": {}
                    }
                ]
            }
        },
        "/merchant-api/shops/{shop_unique_id}/blog-posts/{post_unique_id}": {
            "get": {
                "tags": [
                    "Blog Posts"
                ],
                "summary": "Get a blog post.",
                "operationId": "blog-posts-get",
                "parameters": [
                    {
                        "name": "shop_unique_id",
                        "in": "path",
                        "description": "Perform action on the shop which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "post_unique_id",
                        "in": "path",
                        "description": "Perform action on the blog post which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/BlogPostResource"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Unauthenticated",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "Forbidden",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Resource Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearer_token": {}
                    }
                ]
            },
            "delete": {
                "tags": [
                    "Blog Posts"
                ],
                "summary": "Delete a blog post.",
                "operationId": "blog-posts-delete",
                "parameters": [
                    {
                        "name": "shop_unique_id",
                        "in": "path",
                        "description": "Perform action on the shop which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "post_unique_id",
                        "in": "path",
                        "description": "Perform action on the blog post which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "204": {
                        "description": "Successful operation"
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Unauthenticated",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "Forbidden",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Resource Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearer_token": {}
                    }
                ]
            },
            "patch": {
                "tags": [
                    "Blog Posts"
                ],
                "summary": "Update a blog post.",
                "operationId": "blog-posts-update",
                "parameters": [
                    {
                        "name": "shop_unique_id",
                        "in": "path",
                        "description": "Perform action on the shop which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "post_unique_id",
                        "in": "path",
                        "description": "Perform action on the blog post which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "multipart/form-data": {
                            "schema": {
                                "allOf": [
                                    {
                                        "$ref": "#/components/schemas/BlogPostUpdateRequest"
                                    }
                                ]
                            },
                            "encoding": {
                                "category_unique_ids[]": {
                                    "explode": true
                                }
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Successful operation",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/BlogPostResource"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Unauthenticated",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "Forbidden",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Resource Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Unprocessable Entity",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/UnprocessableEntityErrorResource"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearer_token": {}
                    }
                ]
            }
        },
        "/merchant-api/shops/{shop_unique_id}/blog-posts/{post_unique_id}/images/{image_unique_id}": {
            "delete": {
                "tags": [
                    "Blog Posts"
                ],
                "summary": "Delete a blog post image.",
                "operationId": "blog-posts-delete-image",
                "parameters": [
                    {
                        "name": "shop_unique_id",
                        "in": "path",
                        "description": "Perform action on the shop which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "post_unique_id",
                        "in": "path",
                        "description": "Perform action on the blog post which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "image_unique_id",
                        "in": "path",
                        "description": "Perform action on the image which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "204": {
                        "description": "Successful operation"
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Unauthenticated",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "Forbidden",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Resource Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearer_token": {}
                    }
                ]
            }
        },
        "/merchant-api/shops/{shop_unique_id}/blog-posts/{post_unique_id}/field": {
            "patch": {
                "tags": [
                    "Blog Posts"
                ],
                "summary": "Update a single field of a blog post.",
                "operationId": "blog-posts-update-field",
                "parameters": [
                    {
                        "name": "shop_unique_id",
                        "in": "path",
                        "description": "Perform action on the shop which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "post_unique_id",
                        "in": "path",
                        "description": "Perform action on the blog post which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "field": {
                                        "type": "string",
                                        "enum": [
                                            "is_active"
                                        ]
                                    },
                                    "value": {
                                        "oneOf": [
                                            {
                                                "type": "string"
                                            },
                                            {
                                                "type": "boolean"
                                            },
                                            {
                                                "type": "integer"
                                            }
                                        ]
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Successful operation",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "field": {
                                            "type": "string"
                                        },
                                        "value": {
                                            "oneOf": [
                                                {
                                                    "type": "string"
                                                },
                                                {
                                                    "type": "boolean"
                                                },
                                                {
                                                    "type": "integer"
                                                }
                                            ]
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Unauthenticated",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "Forbidden",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Resource Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Unprocessable Entity",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/UnprocessableEntityErrorResource"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearer_token": {}
                    }
                ]
            }
        },
        "/merchant-api/shops/{shop_unique_id}/brands": {
            "get": {
                "tags": [
                    "Brands"
                ],
                "summary": "Get brand list.",
                "operationId": "brands-list",
                "parameters": [
                    {
                        "name": "shop_unique_id",
                        "in": "path",
                        "description": "Perform action on the shop which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "filter[name]",
                        "in": "query",
                        "description": "Search within name",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/BrandResource"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Unauthenticated",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "Forbidden",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Resource Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearer_token": {}
                    }
                ]
            },
            "post": {
                "tags": [
                    "Brands"
                ],
                "summary": "Create a brand.",
                "operationId": "brands-create",
                "parameters": [
                    {
                        "name": "shop_unique_id",
                        "in": "path",
                        "description": "Perform action on the shop which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "multipart/form-data": {
                            "schema": {
                                "allOf": [
                                    {
                                        "$ref": "#/components/schemas/BrandCreateRequest"
                                    }
                                ]
                            }
                        }
                    }
                },
                "responses": {
                    "201": {
                        "description": "Successful operation",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/BrandResource"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Unauthenticated",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "Forbidden",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Resource Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Unprocessable Entity",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/UnprocessableEntityErrorResource"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearer_token": {}
                    }
                ]
            }
        },
        "/merchant-api/shops/{shop_unique_id}/brands/{brand_unique_id}": {
            "get": {
                "tags": [
                    "Brands"
                ],
                "summary": "Get a brand.",
                "operationId": "brands-get",
                "parameters": [
                    {
                        "name": "shop_unique_id",
                        "in": "path",
                        "description": "Perform action on the shop which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "brand_unique_id",
                        "in": "path",
                        "description": "Perform action on the brand which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/BrandResource"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Unauthenticated",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "Forbidden",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Resource Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearer_token": {}
                    }
                ]
            },
            "delete": {
                "tags": [
                    "Brands"
                ],
                "summary": "Delete a brand.",
                "operationId": "brands-delete",
                "parameters": [
                    {
                        "name": "shop_unique_id",
                        "in": "path",
                        "description": "Perform action on the shop which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "brand_unique_id",
                        "in": "path",
                        "description": "Perform action on the brand which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "204": {
                        "description": "Successful operation"
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Unauthenticated",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "Forbidden",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Resource Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearer_token": {}
                    }
                ]
            },
            "patch": {
                "tags": [
                    "Brands"
                ],
                "summary": "Update a brand.",
                "operationId": "brands-update",
                "parameters": [
                    {
                        "name": "shop_unique_id",
                        "in": "path",
                        "description": "Perform action on the shop which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "brand_unique_id",
                        "in": "path",
                        "description": "Perform action on the brand which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "multipart/form-data": {
                            "schema": {
                                "allOf": [
                                    {
                                        "$ref": "#/components/schemas/BrandUpdateRequest"
                                    }
                                ]
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Successful operation",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/BrandResource"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Unauthenticated",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "Forbidden",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Resource Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Unprocessable Entity",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/UnprocessableEntityErrorResource"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearer_token": {}
                    }
                ]
            }
        },
        "/merchant-api/shops/{shop_unique_id}/categories": {
            "get": {
                "tags": [
                    "Categories"
                ],
                "summary": "Get a list of category with pagination.",
                "operationId": "categories-list",
                "parameters": [
                    {
                        "name": "shop_unique_id",
                        "in": "path",
                        "description": "Perform action on the shop which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "page",
                        "in": "query",
                        "description": "Starts from 1",
                        "required": false,
                        "explode": false,
                        "schema": {
                            "type": "int32",
                            "default": "1"
                        }
                    },
                    {
                        "name": "per_page",
                        "in": "query",
                        "description": "Paginate by, min 5, max 50. Default 50.",
                        "required": false,
                        "schema": {
                            "type": "int32",
                            "default": "50"
                        }
                    },
                    {
                        "name": "filter[trashed]",
                        "in": "query",
                        "description": "Archive status. Options are `live`, `only`, `with`. `live` means only non archived items. `only` means only archived items. `with` means archived and live items.",
                        "required": false,
                        "schema": {
                            "type": "string",
                            "default": "live"
                        }
                    },
                    {
                        "name": "filter[is_active]",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "boolean",
                            "default": true
                        }
                    },
                    {
                        "name": "filter[name]",
                        "in": "query",
                        "description": "Search within category names",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/PaginatedCategoryResource"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Unauthenticated",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "Forbidden",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Resource Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearer_token": {}
                    }
                ]
            },
            "post": {
                "tags": [
                    "Categories"
                ],
                "summary": "Create a product category.",
                "operationId": "categories-create",
                "parameters": [
                    {
                        "name": "shop_unique_id",
                        "in": "path",
                        "description": "Perform action on the shop which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "multipart/form-data": {
                            "schema": {
                                "allOf": [
                                    {
                                        "$ref": "#/components/schemas/CategoryCreateRequest"
                                    }
                                ]
                            }
                        }
                    }
                },
                "responses": {
                    "201": {
                        "description": "Successful operation",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/CategoryResource"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Unauthenticated",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "Forbidden",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Resource Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Unprocessable Entity",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/UnprocessableEntityErrorResource"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearer_token": {}
                    }
                ]
            }
        },
        "/merchant-api/shops/{shop_unique_id}/categories/{category_unique_id}": {
            "get": {
                "tags": [
                    "Categories"
                ],
                "summary": "Get a category.",
                "operationId": "categories-get",
                "parameters": [
                    {
                        "name": "shop_unique_id",
                        "in": "path",
                        "description": "Perform action on the shop which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "category_unique_id",
                        "in": "path",
                        "description": "Perform action on the category which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/CategoryResource"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Unauthenticated",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "Forbidden",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Resource Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearer_token": {}
                    }
                ]
            },
            "delete": {
                "tags": [
                    "Categories"
                ],
                "summary": "Delete a product category.",
                "operationId": "categories-delete",
                "parameters": [
                    {
                        "name": "shop_unique_id",
                        "in": "path",
                        "description": "Perform action on the shop which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "category_unique_id",
                        "in": "path",
                        "description": "Perform action on the category which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "204": {
                        "description": "Successful operation"
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Unauthenticated",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "Forbidden",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Resource Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearer_token": {}
                    }
                ]
            },
            "patch": {
                "tags": [
                    "Categories"
                ],
                "summary": "Update a product category.",
                "operationId": "categories-update",
                "parameters": [
                    {
                        "name": "shop_unique_id",
                        "in": "path",
                        "description": "Perform action on the shop which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "category_unique_id",
                        "in": "path",
                        "description": "Perform action on the category which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "multipart/form-data": {
                            "schema": {
                                "allOf": [
                                    {
                                        "$ref": "#/components/schemas/CategoryUpdateRequest"
                                    }
                                ]
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Successful operation",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/CategoryResource"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Unauthenticated",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "Forbidden",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Resource Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Unprocessable Entity",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/UnprocessableEntityErrorResource"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearer_token": {}
                    }
                ]
            }
        },
        "/merchant-api/shops/{shop_unique_id}/categories/{category_unique_id}/mirror-patch": {
            "post": {
                "tags": [
                    "Categories"
                ],
                "summary": "Update a product category.",
                "operationId": "categories-updateMirrorPatch",
                "parameters": [
                    {
                        "name": "shop_unique_id",
                        "in": "path",
                        "description": "Perform action on the shop which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "category_unique_id",
                        "in": "path",
                        "description": "Perform action on the category which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "multipart/form-data": {
                            "schema": {
                                "allOf": [
                                    {
                                        "$ref": "#/components/schemas/CategoryUpdateRequest"
                                    }
                                ]
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Successful operation",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/CategoryResource"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Unauthenticated",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "Forbidden",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Resource Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Unprocessable Entity",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/UnprocessableEntityErrorResource"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearer_token": {}
                    }
                ]
            }
        },
        "/merchant-api/shops/{shop_unique_id}/consumers": {
            "get": {
                "tags": [
                    "Consumers"
                ],
                "summary": "Get a list of consumers with pagination.",
                "operationId": "consumers-list",
                "parameters": [
                    {
                        "name": "shop_unique_id",
                        "in": "path",
                        "description": "Perform action on the shop which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "page",
                        "in": "query",
                        "description": "Starts from 1",
                        "required": false,
                        "explode": false,
                        "schema": {
                            "type": "int32",
                            "default": "1"
                        }
                    },
                    {
                        "name": "per_page",
                        "in": "query",
                        "description": "Paginate by, min 5, max 50. Default 50.",
                        "required": false,
                        "schema": {
                            "type": "int32",
                            "default": "50"
                        }
                    },
                    {
                        "name": "filter[trashed]",
                        "in": "query",
                        "description": "Archive status. Options are `live`, `only`, `with`. `live` means only non archived items. `only` means only archived items. `with` means archived and live items.",
                        "required": false,
                        "schema": {
                            "type": "string",
                            "default": "live"
                        }
                    },
                    {
                        "name": "filter[name]",
                        "in": "query",
                        "description": "Search within consumer name (partial match).",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "filter[email]",
                        "in": "query",
                        "description": "Search within consumer email (partial match).",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "filter[phone]",
                        "in": "query",
                        "description": "Search within consumer phone (partial match).",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "filter[status]",
                        "in": "query",
                        "description": "Filter by status. Options: `unverified`, `verified`, `banned`.",
                        "required": false,
                        "schema": {
                            "type": "string",
                            "enum": [
                                "unverified",
                                "verified",
                                "banned"
                            ]
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/PaginatedConsumerResource"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Unauthenticated",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "Forbidden",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Resource Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearer_token": {}
                    }
                ]
            },
            "post": {
                "tags": [
                    "Consumers"
                ],
                "summary": "Create a consumer and attach to this shop.",
                "operationId": "consumers-create",
                "parameters": [
                    {
                        "name": "shop_unique_id",
                        "in": "path",
                        "description": "Perform action on the shop which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "allOf": [
                                    {
                                        "$ref": "#/components/schemas/CreateConsumerRequest"
                                    }
                                ]
                            }
                        }
                    }
                },
                "responses": {
                    "201": {
                        "description": "Consumer created successfully",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/ConsumerResource"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Unauthenticated",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "Forbidden",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "409": {
                        "description": "Consumer already belongs to this shop",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Unprocessable Entity",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/UnprocessableEntityErrorResource"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearer_token": {}
                    }
                ]
            }
        },
        "/merchant-api/shops/{shop_unique_id}/consumers/{consumer_unique_id}": {
            "get": {
                "tags": [
                    "Consumers"
                ],
                "summary": "Get a consumer.",
                "operationId": "consumers-get",
                "parameters": [
                    {
                        "name": "shop_unique_id",
                        "in": "path",
                        "description": "Perform action on the shop which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "consumer_unique_id",
                        "in": "path",
                        "description": "Perform action on the consumer which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/ConsumerResource"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Unauthenticated",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "Forbidden",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Resource Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearer_token": {}
                    }
                ]
            },
            "delete": {
                "tags": [
                    "Consumers"
                ],
                "summary": "Soft-delete a consumer.",
                "operationId": "consumers-delete",
                "parameters": [
                    {
                        "name": "shop_unique_id",
                        "in": "path",
                        "description": "Perform action on the shop which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "consumer_unique_id",
                        "in": "path",
                        "description": "Perform action on the consumer which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "204": {
                        "description": "Successful operation"
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Unauthenticated",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "Forbidden",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Resource Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearer_token": {}
                    }
                ]
            },
            "patch": {
                "tags": [
                    "Consumers"
                ],
                "summary": "Update a consumer.",
                "operationId": "consumers-update",
                "parameters": [
                    {
                        "name": "shop_unique_id",
                        "in": "path",
                        "description": "Perform action on the shop which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "consumer_unique_id",
                        "in": "path",
                        "description": "Perform action on the consumer which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "allOf": [
                                    {
                                        "$ref": "#/components/schemas/UpdateConsumerRequest"
                                    }
                                ]
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Successful operation",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/ConsumerResource"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Unauthenticated",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "Forbidden",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Resource Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Unprocessable Entity",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/UnprocessableEntityErrorResource"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearer_token": {}
                    }
                ]
            }
        },
        "/merchant-api/shops/{shop_unique_id}/consumers/{consumer_unique_id}/mirror-patch": {
            "post": {
                "tags": [
                    "Consumers"
                ],
                "summary": "Update a consumer.",
                "operationId": "consumers-updateMirrorPatch",
                "parameters": [
                    {
                        "name": "shop_unique_id",
                        "in": "path",
                        "description": "Perform action on the shop which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "consumer_unique_id",
                        "in": "path",
                        "description": "Perform action on the consumer which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/ConsumerResource"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Unauthenticated",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "Forbidden",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Resource Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Unprocessable Entity",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/UnprocessableEntityErrorResource"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearer_token": {}
                    }
                ]
            }
        },
        "/merchant-api/shops/{shop_unique_id}/consumers/{consumer_unique_id}/restore": {
            "post": {
                "tags": [
                    "Consumers"
                ],
                "summary": "Restore a soft-deleted consumer.",
                "operationId": "consumers-restore",
                "parameters": [
                    {
                        "name": "shop_unique_id",
                        "in": "path",
                        "description": "Perform action on the shop which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "consumer_unique_id",
                        "in": "path",
                        "description": "Perform action on the consumer which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/ConsumerResource"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Unauthenticated",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "Forbidden",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Resource Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearer_token": {}
                    }
                ]
            }
        },
        "/merchant-api/shops/{shop_unique_id}/consumers/{consumer_unique_id}/status": {
            "patch": {
                "tags": [
                    "Consumers"
                ],
                "summary": "Change consumer status.",
                "operationId": "consumers-changeStatus",
                "parameters": [
                    {
                        "name": "shop_unique_id",
                        "in": "path",
                        "description": "Perform action on the shop which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "consumer_unique_id",
                        "in": "path",
                        "description": "Perform action on the consumer which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "allOf": [
                                    {
                                        "$ref": "#/components/schemas/ChangeStatusRequest"
                                    }
                                ]
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Successful operation",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/ConsumerResource"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Unauthenticated",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "Forbidden",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Resource Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Unprocessable Entity",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/UnprocessableEntityErrorResource"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearer_token": {}
                    }
                ]
            }
        },
        "/merchant-api/shops/{shop_unique_id}/consumers/{consumer_unique_id}/addresses": {
            "get": {
                "tags": [
                    "Consumers"
                ],
                "summary": "List all addresses of a consumer.",
                "operationId": "consumers-listAddresses",
                "parameters": [
                    {
                        "name": "shop_unique_id",
                        "in": "path",
                        "description": "Perform action on the shop which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "consumer_unique_id",
                        "in": "path",
                        "description": "Perform action on the consumer which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/ConsumerAddressResource"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Unauthenticated",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "Forbidden",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Resource Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearer_token": {}
                    }
                ]
            },
            "post": {
                "tags": [
                    "Consumers"
                ],
                "summary": "Create a new address for a consumer.",
                "operationId": "consumers-storeAddress",
                "parameters": [
                    {
                        "name": "shop_unique_id",
                        "in": "path",
                        "description": "Perform action on the shop which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "consumer_unique_id",
                        "in": "path",
                        "description": "Perform action on the consumer which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "allOf": [
                                    {
                                        "$ref": "#/components/schemas/StoreAddressRequest"
                                    }
                                ]
                            }
                        }
                    }
                },
                "responses": {
                    "201": {
                        "description": "Address created successfully",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/ConsumerAddressResource"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Unauthenticated",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "Forbidden",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Resource Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Unprocessable Entity",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/UnprocessableEntityErrorResource"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearer_token": {}
                    }
                ]
            }
        },
        "/merchant-api/shops/{shop_unique_id}/consumers/{consumer_unique_id}/addresses/{address_unique_id}": {
            "delete": {
                "tags": [
                    "Consumers"
                ],
                "summary": "Delete an address of a consumer.",
                "operationId": "consumers-destroyAddress",
                "parameters": [
                    {
                        "name": "shop_unique_id",
                        "in": "path",
                        "description": "Perform action on the shop which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "consumer_unique_id",
                        "in": "path",
                        "description": "Perform action on the consumer which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "address_unique_id",
                        "in": "path",
                        "description": "Perform action on the address which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "204": {
                        "description": "Successful operation"
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Unauthenticated",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "Forbidden",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Resource Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearer_token": {}
                    }
                ]
            },
            "patch": {
                "tags": [
                    "Consumers"
                ],
                "summary": "Update an existing address of a consumer.",
                "operationId": "consumers-updateAddress",
                "parameters": [
                    {
                        "name": "shop_unique_id",
                        "in": "path",
                        "description": "Perform action on the shop which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "consumer_unique_id",
                        "in": "path",
                        "description": "Perform action on the consumer which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "address_unique_id",
                        "in": "path",
                        "description": "Perform action on the address which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "allOf": [
                                    {
                                        "$ref": "#/components/schemas/UpdateAddressRequest"
                                    }
                                ]
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Successful operation",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/ConsumerAddressResource"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Unauthenticated",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "Forbidden",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Resource Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Unprocessable Entity",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/UnprocessableEntityErrorResource"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearer_token": {}
                    }
                ]
            }
        },
        "/merchant-api/shops/{shop_unique_id}/consumers/{consumer_unique_id}/addresses/{address_unique_id}/set-default": {
            "post": {
                "tags": [
                    "Consumers"
                ],
                "summary": "Set an address as the default for its type.",
                "operationId": "consumers-setDefaultAddress",
                "parameters": [
                    {
                        "name": "shop_unique_id",
                        "in": "path",
                        "description": "Perform action on the shop which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "consumer_unique_id",
                        "in": "path",
                        "description": "Perform action on the consumer which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "address_unique_id",
                        "in": "path",
                        "description": "Perform action on the address which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/ConsumerAddressResource"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Unauthenticated",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "Forbidden",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Resource Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearer_token": {}
                    }
                ]
            }
        },
        "/merchant-api/shops/{shop_unique_id}/consumers/{consumer_unique_id}/credit/balance": {
            "get": {
                "tags": [
                    "Consumer Credit"
                ],
                "summary": "Get the current credit balance for a consumer.",
                "operationId": "consumers-getCurrentBalance",
                "parameters": [
                    {
                        "name": "shop_unique_id",
                        "in": "path",
                        "description": "Perform action on the shop which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "consumer_unique_id",
                        "in": "path",
                        "description": "Perform action on the consumer which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation"
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Unauthenticated",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "Forbidden",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Resource Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearer_token": {}
                    }
                ]
            }
        },
        "/merchant-api/shops/{shop_unique_id}/consumers/{consumer_unique_id}/credit/transactions": {
            "get": {
                "tags": [
                    "Consumer Credit"
                ],
                "summary": "Get credit transaction history for a consumer.",
                "operationId": "consumers-getTransactions",
                "parameters": [
                    {
                        "name": "shop_unique_id",
                        "in": "path",
                        "description": "Perform action on the shop which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "consumer_unique_id",
                        "in": "path",
                        "description": "Perform action on the consumer which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "filter[transaction_type]",
                        "in": "query",
                        "description": "Filter by transaction type. Options: `charge`, `payment`, `adjustment`.",
                        "required": false,
                        "schema": {
                            "type": "string",
                            "enum": [
                                "charge",
                                "payment",
                                "adjustment"
                            ]
                        }
                    },
                    {
                        "name": "filter[start_date]",
                        "in": "query",
                        "description": "Filter transactions from this date (Y-m-d).",
                        "required": false,
                        "schema": {
                            "type": "string",
                            "format": "date"
                        }
                    },
                    {
                        "name": "filter[end_date]",
                        "in": "query",
                        "description": "Filter transactions until this date (Y-m-d).",
                        "required": false,
                        "schema": {
                            "type": "string",
                            "format": "date"
                        }
                    },
                    {
                        "name": "page",
                        "in": "query",
                        "description": "Starts from 1",
                        "required": false,
                        "explode": false,
                        "schema": {
                            "type": "int32",
                            "default": "1"
                        }
                    },
                    {
                        "name": "per_page",
                        "in": "query",
                        "description": "Paginate by, min 5, max 50. Default 50.",
                        "required": false,
                        "schema": {
                            "type": "int32",
                            "default": "50"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation"
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Unauthenticated",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "Forbidden",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Resource Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearer_token": {}
                    }
                ]
            }
        },
        "/merchant-api/shops/{shop_unique_id}/consumers/{consumer_unique_id}/credit/payment": {
            "post": {
                "tags": [
                    "Consumer Credit"
                ],
                "summary": "Record a credit payment from a consumer.",
                "operationId": "consumers-recordPayment",
                "parameters": [
                    {
                        "name": "shop_unique_id",
                        "in": "path",
                        "description": "Perform action on the shop which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "consumer_unique_id",
                        "in": "path",
                        "description": "Perform action on the consumer which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "allOf": [
                                    {
                                        "$ref": "#/components/schemas/RecordPaymentRequest"
                                    }
                                ]
                            }
                        }
                    }
                },
                "responses": {
                    "201": {
                        "description": "Payment recorded successfully"
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Unauthenticated",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "Forbidden",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Resource Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Unprocessable Entity",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/UnprocessableEntityErrorResource"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearer_token": {}
                    }
                ]
            }
        },
        "/merchant-api/shops/{shop_unique_id}/consumers/{consumer_unique_id}/credit/adjustment": {
            "post": {
                "tags": [
                    "Consumer Credit"
                ],
                "summary": "Make a credit adjustment for a consumer.",
                "operationId": "consumers-makeAdjustment",
                "parameters": [
                    {
                        "name": "shop_unique_id",
                        "in": "path",
                        "description": "Perform action on the shop which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "consumer_unique_id",
                        "in": "path",
                        "description": "Perform action on the consumer which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "allOf": [
                                    {
                                        "$ref": "#/components/schemas/MakeAdjustmentRequest"
                                    }
                                ]
                            }
                        }
                    }
                },
                "responses": {
                    "201": {
                        "description": "Adjustment recorded successfully"
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Unauthenticated",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "Forbidden",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Resource Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Unprocessable Entity",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/UnprocessableEntityErrorResource"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearer_token": {}
                    }
                ]
            }
        },
        "/merchant-api/shops/{shop_unique_id}/credit/statistics": {
            "get": {
                "tags": [
                    "Consumer Credit"
                ],
                "summary": "Get credit statistics for a shop.",
                "operationId": "consumers-creditStatistics",
                "parameters": [
                    {
                        "name": "shop_unique_id",
                        "in": "path",
                        "description": "Perform action on the shop which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation"
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Unauthenticated",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "Forbidden",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Resource Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearer_token": {}
                    }
                ]
            }
        },
        "/merchant-api/shops/{shop_unique_id}/consumer-groups": {
            "get": {
                "tags": [
                    "Consumer Groups"
                ],
                "summary": "Get a list of consumer groups with pagination.",
                "operationId": "consumer-groups-list",
                "parameters": [
                    {
                        "name": "shop_unique_id",
                        "in": "path",
                        "description": "Perform action on the shop which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "page",
                        "in": "query",
                        "description": "Starts from 1",
                        "required": false,
                        "explode": false,
                        "schema": {
                            "type": "int32",
                            "default": "1"
                        }
                    },
                    {
                        "name": "per_page",
                        "in": "query",
                        "description": "Paginate by, min 5, max 50. Default 50.",
                        "required": false,
                        "schema": {
                            "type": "int32",
                            "default": "50"
                        }
                    },
                    {
                        "name": "is_active",
                        "in": "query",
                        "description": "Filter by active status.",
                        "required": false,
                        "schema": {
                            "type": "boolean"
                        }
                    },
                    {
                        "name": "search",
                        "in": "query",
                        "description": "Search within name and description (partial match).",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/PaginatedConsumerGroupResource"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Unauthenticated",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "Forbidden",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Resource Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearer_token": {}
                    }
                ]
            },
            "post": {
                "tags": [
                    "Consumer Groups"
                ],
                "summary": "Create a consumer group.",
                "operationId": "consumer-groups-create",
                "parameters": [
                    {
                        "name": "shop_unique_id",
                        "in": "path",
                        "description": "Perform action on the shop which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "allOf": [
                                    {
                                        "$ref": "#/components/schemas/ConsumerGroupCreateRequest"
                                    }
                                ]
                            }
                        }
                    }
                },
                "responses": {
                    "201": {
                        "description": "Consumer group created successfully",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/ConsumerGroupResource"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Unauthenticated",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "Forbidden",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Unprocessable Entity",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/UnprocessableEntityErrorResource"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearer_token": {}
                    }
                ]
            }
        },
        "/merchant-api/shops/{shop_unique_id}/consumer-groups/{consumer_group_unique_id}": {
            "get": {
                "tags": [
                    "Consumer Groups"
                ],
                "summary": "Get a consumer group.",
                "operationId": "consumer-groups-get",
                "parameters": [
                    {
                        "name": "shop_unique_id",
                        "in": "path",
                        "description": "Perform action on the shop which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "consumer_group_unique_id",
                        "in": "path",
                        "description": "Perform action on the consumer group which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/ConsumerGroupResource"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Unauthenticated",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "Forbidden",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Resource Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearer_token": {}
                    }
                ]
            },
            "delete": {
                "tags": [
                    "Consumer Groups"
                ],
                "summary": "Delete a consumer group.",
                "operationId": "consumer-groups-delete",
                "parameters": [
                    {
                        "name": "shop_unique_id",
                        "in": "path",
                        "description": "Perform action on the shop which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "consumer_group_unique_id",
                        "in": "path",
                        "description": "Perform action on the consumer group which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "204": {
                        "description": "Successful operation"
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Unauthenticated",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "Forbidden",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Resource Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearer_token": {}
                    }
                ]
            },
            "patch": {
                "tags": [
                    "Consumer Groups"
                ],
                "summary": "Update a consumer group.",
                "operationId": "consumer-groups-update",
                "parameters": [
                    {
                        "name": "shop_unique_id",
                        "in": "path",
                        "description": "Perform action on the shop which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "consumer_group_unique_id",
                        "in": "path",
                        "description": "Perform action on the consumer group which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "allOf": [
                                    {
                                        "$ref": "#/components/schemas/ConsumerGroupUpdateRequest"
                                    }
                                ]
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Successful operation",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/ConsumerGroupResource"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Unauthenticated",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "Forbidden",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Resource Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Unprocessable Entity",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/UnprocessableEntityErrorResource"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearer_token": {}
                    }
                ]
            }
        },
        "/merchant-api/shops/{shop_unique_id}/consumer-groups/{consumer_group_unique_id}/mirror-patch": {
            "post": {
                "tags": [
                    "Consumer Groups"
                ],
                "summary": "Update a consumer group (mirror-patch).",
                "operationId": "consumer-groups-updateMirrorPatch",
                "parameters": [
                    {
                        "name": "shop_unique_id",
                        "in": "path",
                        "description": "Perform action on the shop which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "consumer_group_unique_id",
                        "in": "path",
                        "description": "Perform action on the consumer group which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/ConsumerGroupResource"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Unauthenticated",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "Forbidden",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Resource Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Unprocessable Entity",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/UnprocessableEntityErrorResource"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearer_token": {}
                    }
                ]
            }
        },
        "/merchant-api/shops/{shop_unique_id}/consumer-groups/assignments/consumers/{consumer_unique_id}": {
            "post": {
                "tags": [
                    "Consumer Groups"
                ],
                "summary": "Assign a consumer to a group (or unassign by passing null).",
                "operationId": "consumer-groups-assignConsumer",
                "parameters": [
                    {
                        "name": "shop_unique_id",
                        "in": "path",
                        "description": "Perform action on the shop which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "consumer_unique_id",
                        "in": "path",
                        "description": "Perform action on the consumer which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "allOf": [
                                    {
                                        "$ref": "#/components/schemas/ConsumerGroupAssignRequest"
                                    }
                                ]
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Successful operation",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/ConsumerResource"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Unauthenticated",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "Forbidden",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Resource Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Unprocessable Entity",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/UnprocessableEntityErrorResource"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearer_token": {}
                    }
                ]
            }
        },
        "/merchant-api/shops/{shop_unique_id}/consumer-groups/assignments/bulk-assign": {
            "post": {
                "tags": [
                    "Consumer Groups"
                ],
                "summary": "Bulk assign consumers to a group.",
                "operationId": "consumer-groups-bulkAssign",
                "parameters": [
                    {
                        "name": "shop_unique_id",
                        "in": "path",
                        "description": "Perform action on the shop which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "allOf": [
                                    {
                                        "$ref": "#/components/schemas/ConsumerGroupBulkAssignRequest"
                                    }
                                ]
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Successful operation"
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Unauthenticated",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "Forbidden",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Resource Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Unprocessable Entity",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/UnprocessableEntityErrorResource"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearer_token": {}
                    }
                ]
            }
        },
        "/merchant-api/shops/{shop_unique_id}/consumer-groups/{consumer_group_unique_id}/consumers": {
            "get": {
                "tags": [
                    "Consumer Groups"
                ],
                "summary": "Get consumers in a consumer group with pagination.",
                "operationId": "consumer-groups-getConsumersInGroup",
                "parameters": [
                    {
                        "name": "shop_unique_id",
                        "in": "path",
                        "description": "Perform action on the shop which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "consumer_group_unique_id",
                        "in": "path",
                        "description": "Perform action on the consumer group which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "page",
                        "in": "query",
                        "description": "Starts from 1",
                        "required": false,
                        "explode": false,
                        "schema": {
                            "type": "int32",
                            "default": "1"
                        }
                    },
                    {
                        "name": "per_page",
                        "in": "query",
                        "description": "Paginate by, min 5, max 50. Default 50.",
                        "required": false,
                        "schema": {
                            "type": "int32",
                            "default": "50"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/PaginatedConsumerResource"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Unauthenticated",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "Forbidden",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Resource Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearer_token": {}
                    }
                ]
            }
        },
        "/merchant-api/shops/{shop_unique_id}/consumer-groups/{consumer_group_unique_id}/category-discounts": {
            "post": {
                "tags": [
                    "Consumer Groups"
                ],
                "summary": "Set a category discount for a consumer group.",
                "operationId": "consumer-groups-setCategoryDiscount",
                "parameters": [
                    {
                        "name": "shop_unique_id",
                        "in": "path",
                        "description": "Perform action on the shop which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "consumer_group_unique_id",
                        "in": "path",
                        "description": "Perform action on the consumer group which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "allOf": [
                                    {
                                        "$ref": "#/components/schemas/ConsumerGroupSetCategoryDiscountRequest"
                                    }
                                ]
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Successful operation",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/ConsumerGroupCategoryDiscountResource"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Unauthenticated",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "Forbidden",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Resource Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Unprocessable Entity",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/UnprocessableEntityErrorResource"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearer_token": {}
                    }
                ]
            }
        },
        "/merchant-api/shops/{shop_unique_id}/consumer-groups/{consumer_group_unique_id}/category-discounts/{category_id}": {
            "delete": {
                "tags": [
                    "Consumer Groups"
                ],
                "summary": "Remove a category discount from a consumer group.",
                "operationId": "consumer-groups-removeCategoryDiscount",
                "parameters": [
                    {
                        "name": "shop_unique_id",
                        "in": "path",
                        "description": "Perform action on the shop which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "consumer_group_unique_id",
                        "in": "path",
                        "description": "Perform action on the consumer group which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "category_id",
                        "in": "path",
                        "description": "The category ID to remove the discount for.",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "204": {
                        "description": "Successful operation"
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Unauthenticated",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "Forbidden",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Resource Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearer_token": {}
                    }
                ]
            }
        },
        "/merchant-api/shops/{shop_unique_id}/consumer-groups/{consumer_group_unique_id}/visibility": {
            "post": {
                "tags": [
                    "Consumer Groups"
                ],
                "summary": "Set a visibility rule for a consumer group.",
                "operationId": "consumer-groups-setVisibility",
                "parameters": [
                    {
                        "name": "shop_unique_id",
                        "in": "path",
                        "description": "Perform action on the shop which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "consumer_group_unique_id",
                        "in": "path",
                        "description": "Perform action on the consumer group which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "allOf": [
                                    {
                                        "$ref": "#/components/schemas/ConsumerGroupSetVisibilityRequest"
                                    }
                                ]
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Successful operation",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/ConsumerGroupVisibilityResource"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Unauthenticated",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "Forbidden",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Resource Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Unprocessable Entity",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/UnprocessableEntityErrorResource"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearer_token": {}
                    }
                ]
            },
            "delete": {
                "tags": [
                    "Consumer Groups"
                ],
                "summary": "Remove a visibility rule from a consumer group.",
                "operationId": "consumer-groups-removeVisibility",
                "parameters": [
                    {
                        "name": "shop_unique_id",
                        "in": "path",
                        "description": "Perform action on the shop which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "consumer_group_unique_id",
                        "in": "path",
                        "description": "Perform action on the consumer group which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "allOf": [
                                    {
                                        "$ref": "#/components/schemas/ConsumerGroupRemoveVisibilityRequest"
                                    }
                                ]
                            }
                        }
                    }
                },
                "responses": {
                    "204": {
                        "description": "Successful operation"
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Unauthenticated",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "Forbidden",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Resource Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearer_token": {}
                    }
                ]
            }
        },
        "/merchant-api/shops/{shop_unique_id}/hooks": {
            "get": {
                "tags": [
                    "Hooks"
                ],
                "summary": "Get a list of hooks with pagination.",
                "operationId": "hooks-list",
                "parameters": [
                    {
                        "name": "shop_unique_id",
                        "in": "path",
                        "description": "Perform action on the shop which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "sort",
                        "in": "query",
                        "description": "Sorting is ascending by default and can be reversed by adding a hyphen (-) to the start of the property name.",
                        "explode": false,
                        "schema": {
                            "type": "array",
                            "items": {
                                "type": "string",
                                "enum": [
                                    "id",
                                    "-id",
                                    "created_at",
                                    "-created_at",
                                    "updated_at",
                                    "-updated_at",
                                    "name",
                                    "-name",
                                    "action",
                                    "-action",
                                    "url",
                                    "-url",
                                    "method",
                                    "-method"
                                ]
                            }
                        }
                    },
                    {
                        "name": "page",
                        "in": "query",
                        "description": "Starts from 1",
                        "schema": {
                            "type": "int32",
                            "default": "1"
                        }
                    },
                    {
                        "name": "per_page",
                        "in": "query",
                        "description": "Paginate by, min 5, max 50. Default 50.",
                        "schema": {
                            "type": "int32",
                            "default": "50"
                        }
                    },
                    {
                        "name": "filter[name]",
                        "in": "query",
                        "description": "Search within name",
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "filter[action]",
                        "in": "query",
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "filter[url]",
                        "in": "query",
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "filter[method]",
                        "in": "query",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/PaginatedHookResource"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Unauthenticated",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "Forbidden",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Resource Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearer_token": {}
                    }
                ]
            },
            "post": {
                "tags": [
                    "Hooks"
                ],
                "summary": "Create an hook.",
                "operationId": "hooks-create",
                "parameters": [
                    {
                        "name": "shop_unique_id",
                        "in": "path",
                        "description": "Perform action on the shop which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "multipart/form-data": {
                            "schema": {
                                "allOf": [
                                    {
                                        "$ref": "#/components/schemas/HookCreateRequest"
                                    }
                                ]
                            }
                        }
                    }
                },
                "responses": {
                    "201": {
                        "description": "Successful operation",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/HookResource"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Unauthenticated",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "Forbidden",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Resource Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Unprocessable Entity",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/UnprocessableEntityErrorResource"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearer_token": {}
                    }
                ]
            }
        },
        "/merchant-api/shops/{shop_unique_id}/hooks/{hook_unique_id}": {
            "get": {
                "tags": [
                    "Hooks"
                ],
                "summary": "Get an hook.",
                "operationId": "hooks-get",
                "parameters": [
                    {
                        "name": "shop_unique_id",
                        "in": "path",
                        "description": "Perform action on the shop which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "hook_unique_id",
                        "in": "path",
                        "description": "Perform action on the hook which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/HookResource"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Unauthenticated",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "Forbidden",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Resource Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearer_token": {}
                    }
                ]
            },
            "delete": {
                "tags": [
                    "Hooks"
                ],
                "summary": "Delete an hook.",
                "operationId": "hooks-delete",
                "parameters": [
                    {
                        "name": "shop_unique_id",
                        "in": "path",
                        "description": "Perform action on the shop which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "hook_unique_id",
                        "in": "path",
                        "description": "Perform action on the hook which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "204": {
                        "description": "Successful operation"
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Unauthenticated",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "Forbidden",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Resource Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearer_token": {}
                    }
                ]
            },
            "patch": {
                "tags": [
                    "Hooks"
                ],
                "summary": "Update an hook.",
                "operationId": "hooks-update",
                "parameters": [
                    {
                        "name": "shop_unique_id",
                        "in": "path",
                        "description": "Perform action on the shop which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "hook_unique_id",
                        "in": "path",
                        "description": "Perform action on the hook which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "multipart/form-data": {
                            "schema": {
                                "allOf": [
                                    {
                                        "$ref": "#/components/schemas/HookUpdateRequest"
                                    }
                                ]
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Successful operation",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/HookResource"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Unauthenticated",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "Forbidden",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Resource Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Unprocessable Entity",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/UnprocessableEntityErrorResource"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearer_token": {}
                    }
                ]
            }
        },
        "/merchant-api/shops/{shop_unique_id}/images/{image_unique_id}": {
            "delete": {
                "tags": [
                    "Images"
                ],
                "summary": "Delete an image.",
                "operationId": "images-delete",
                "parameters": [
                    {
                        "name": "shop_unique_id",
                        "in": "path",
                        "description": "Perform action on the shop which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "image_unique_id",
                        "in": "path",
                        "description": "Perform action on the image which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "204": {
                        "description": "Successful operation"
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Unauthenticated",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "Forbidden",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Resource Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearer_token": {}
                    }
                ]
            }
        },
        "/merchant-api/shops/{shop_unique_id}/images": {
            "post": {
                "tags": [
                    "Images"
                ],
                "summary": "Upload an image.",
                "description": "Single image upload.",
                "operationId": "image-create",
                "parameters": [
                    {
                        "name": "shop_unique_id",
                        "in": "path",
                        "description": "Perform action on the shop which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "multipart/form-data": {
                            "schema": {
                                "allOf": [
                                    {
                                        "$ref": "#/components/schemas/ImageCreateRequest"
                                    }
                                ]
                            }
                        }
                    }
                },
                "responses": {
                    "201": {
                        "description": "Successful operation",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/ImageResource"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Unauthenticated",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "Forbidden",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Resource Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Unprocessable Entity",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/UnprocessableEntityErrorResource"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearer_token": {}
                    }
                ]
            }
        },
        "/merchant-api/merchant-app-html-parts": {
            "get": {
                "tags": [
                    "Merchant"
                ],
                "summary": "Custom HTML parts",
                "operationId": "merchant-app-html-parts-htmlParts",
                "responses": {
                    "200": {
                        "description": "Successful operation",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/MerchantAppHtmlPartResource"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Unauthenticated",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "Forbidden",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Resource Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearer_token": {}
                    }
                ]
            }
        },
        "/merchant-api/me": {
            "get": {
                "tags": [
                    "Merchant"
                ],
                "summary": "About me",
                "operationId": "me-get",
                "responses": {
                    "200": {
                        "description": "Successful operation",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/MerchantResource"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Unauthenticated",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "Forbidden",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Resource Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearer_token": {}
                    }
                ]
            },
            "patch": {
                "tags": [
                    "Merchant"
                ],
                "summary": "Update profile.",
                "operationId": "me-update",
                "requestBody": {
                    "required": true,
                    "content": {
                        "multipart/form-data": {
                            "schema": {
                                "allOf": [
                                    {
                                        "$ref": "#/components/schemas/MerchantUpdateRequest"
                                    }
                                ]
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Successful operation",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/MerchantResource"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Unauthenticated",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "Forbidden",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Resource Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Unprocessable Entity",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/UnprocessableEntityErrorResource"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearer_token": {}
                    }
                ]
            }
        },
        "/merchant-api/me/mirror-patch": {
            "post": {
                "tags": [
                    "Merchant"
                ],
                "summary": "Update profile.",
                "operationId": "me-updateMirrorPatch",
                "requestBody": {
                    "required": true,
                    "content": {
                        "multipart/form-data": {
                            "schema": {
                                "allOf": [
                                    {
                                        "$ref": "#/components/schemas/MerchantUpdateRequest"
                                    }
                                ]
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Successful operation",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/MerchantResource"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Unauthenticated",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "Forbidden",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Resource Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Unprocessable Entity",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/UnprocessableEntityErrorResource"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearer_token": {}
                    }
                ]
            }
        },
        "/merchant-api/me/notifications/fcm/subscribe": {
            "post": {
                "tags": [
                    "Merchant"
                ],
                "summary": "Subscribe to FCM notifications.",
                "operationId": "notifications-subscribeToFcmNotifications",
                "requestBody": {
                    "required": true,
                    "content": {
                        "multipart/form-data": {
                            "schema": {
                                "allOf": [
                                    {
                                        "$ref": "#/components/schemas/SubscribeToFcmNotificationsRequest"
                                    }
                                ]
                            }
                        }
                    }
                },
                "responses": {
                    "204": {
                        "description": "No content"
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Unauthenticated",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "Forbidden",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Resource Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Unprocessable Entity",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/UnprocessableEntityErrorResource"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearer_token": {}
                    }
                ]
            }
        },
        "/merchant-api/me/notifications/fcm/unsubscribe": {
            "delete": {
                "tags": [
                    "Merchant"
                ],
                "summary": "Unsubscribe from FCM notifications.",
                "operationId": "notifications-unsubscribeFromFcmNotifications",
                "responses": {
                    "204": {
                        "description": "No content"
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Unauthenticated",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "Forbidden",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Resource Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Unprocessable Entity",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/UnprocessableEntityErrorResource"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearer_token": {}
                    }
                ]
            }
        },
        "/merchant-api/shops/{shop_unique_id}/orders": {
            "get": {
                "tags": [
                    "Orders"
                ],
                "summary": "Get a list of orders with pagination.",
                "operationId": "orders-list",
                "parameters": [
                    {
                        "name": "shop_unique_id",
                        "in": "path",
                        "description": "Perform action on the shop which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "page",
                        "in": "query",
                        "description": "Starts from 1",
                        "required": false,
                        "explode": false,
                        "schema": {
                            "type": "int32",
                            "default": "1"
                        }
                    },
                    {
                        "name": "per_page",
                        "in": "query",
                        "description": "Paginate by, min 5, max 50. Default 50.",
                        "required": false,
                        "schema": {
                            "type": "int32",
                            "default": "50"
                        }
                    },
                    {
                        "name": "filter[trashed]",
                        "in": "query",
                        "description": "Archive status. Options are `live`, `only`, `with`. `live` means only non archived items. `only` means only archived items. `with` means archived and live items.",
                        "required": false,
                        "schema": {
                            "type": "string",
                            "default": "live"
                        }
                    },
                    {
                        "name": "filter[order_status_id]",
                        "in": "query",
                        "description": "`1 => created`, `2 => waiting for approval`, `3 => approved`, `4 => preparing`, `5 => sent`, `6 => delivered`, `7 => cancelled`.",
                        "required": false,
                        "schema": {
                            "type": "integer",
                            "enum": [
                                1,
                                2,
                                3,
                                4,
                                5,
                                6,
                                7
                            ]
                        }
                    },
                    {
                        "name": "filter[payment_method_id]",
                        "in": "query",
                        "description": "`1 => bank transfer`, `2 => cash on delivery`, `3 => credit card on delivery`, `4 => credit card online`, `5 => credit card link`, `6 => multinet`, `7 => sodexo`, `8 => setcard`, `9 => ticket`, `10 => metropol`, `11 => payecard`.",
                        "required": false,
                        "schema": {
                            "type": "integer",
                            "enum": [
                                1,
                                2,
                                3,
                                4,
                                5,
                                6,
                                7,
                                8,
                                9,
                                10,
                                11
                            ]
                        }
                    },
                    {
                        "name": "filter[payment_status_id]",
                        "in": "query",
                        "description": "`0 => waiting for payment`, `1 => payment complete`.",
                        "required": false,
                        "schema": {
                            "type": "integer",
                            "enum": [
                                0,
                                1
                            ]
                        }
                    },
                    {
                        "name": "filter[phone]",
                        "in": "query",
                        "description": "Search within purchaser phone numbers",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "filter[full_name]",
                        "in": "query",
                        "description": "Search within purchaser name",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "filter[tax_number]",
                        "in": "query",
                        "description": "Search within purchaser tax number",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "filter[tax_office]",
                        "in": "query",
                        "description": "Search within purchaser tax office",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "filter[company]",
                        "in": "query",
                        "description": "Search within purchaser company",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "filter[created_at_between]",
                        "in": "query",
                        "description": "Filter by date created between. E.g. 01/12/2020-01/12/2021",
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "filter[total_gte]",
                        "in": "query",
                        "description": "Total greater than",
                        "schema": {
                            "type": "float"
                        }
                    },
                    {
                        "name": "filter[total_lte]",
                        "in": "query",
                        "description": "Total lower than",
                        "schema": {
                            "type": "float"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/PaginatedOrderResource"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Unauthenticated",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "Forbidden",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Resource Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearer_token": {}
                    }
                ]
            }
        },
        "/merchant-api/shops/{shop_unique_id}/orders/{order_unique_id}": {
            "get": {
                "tags": [
                    "Orders"
                ],
                "summary": "Get an order.",
                "operationId": "orders-get",
                "parameters": [
                    {
                        "name": "shop_unique_id",
                        "in": "path",
                        "description": "Perform action on the shop which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "order_unique_id",
                        "in": "path",
                        "description": "Perform action on the order which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/OrderResource"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Unauthenticated",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "Forbidden",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Resource Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearer_token": {}
                    }
                ]
            },
            "delete": {
                "tags": [
                    "Orders"
                ],
                "summary": "Archive an order.",
                "operationId": "orders-delete",
                "parameters": [
                    {
                        "name": "shop_unique_id",
                        "in": "path",
                        "description": "Perform action on the shop which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "order_unique_id",
                        "in": "path",
                        "description": "Perform action on the order which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "204": {
                        "description": "Successful operation"
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Unauthenticated",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "Forbidden",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Resource Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearer_token": {}
                    }
                ]
            },
            "patch": {
                "tags": [
                    "Orders"
                ],
                "summary": "Update an order.",
                "operationId": "orders-update",
                "parameters": [
                    {
                        "name": "shop_unique_id",
                        "in": "path",
                        "description": "Perform action on the shop which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "order_unique_id",
                        "in": "path",
                        "description": "Perform action on the order which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "multipart/form-data": {
                            "schema": {
                                "allOf": [
                                    {
                                        "$ref": "#/components/schemas/OrderUpdateRequest"
                                    }
                                ]
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Successful operation",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/OrderResource"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Unauthenticated",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "Forbidden",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Resource Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Unprocessable Entity",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/UnprocessableEntityErrorResource"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearer_token": {}
                    }
                ]
            }
        },
        "/merchant-api/shops/{shop_unique_id}/orders/{order_unique_id}/mirror-patch": {
            "post": {
                "tags": [
                    "Orders"
                ],
                "summary": "Update an order.",
                "operationId": "orders-updateMirrorPatch",
                "parameters": [
                    {
                        "name": "shop_unique_id",
                        "in": "path",
                        "description": "Perform action on the shop which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "order_unique_id",
                        "in": "path",
                        "description": "Perform action on the order which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "multipart/form-data": {
                            "schema": {
                                "allOf": [
                                    {
                                        "$ref": "#/components/schemas/OrderUpdateRequest"
                                    }
                                ]
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Successful operation",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/OrderResource"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Unauthenticated",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "Forbidden",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Resource Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Unprocessable Entity",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/UnprocessableEntityErrorResource"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearer_token": {}
                    }
                ]
            }
        },
        "/merchant-api/shops/{shop_unique_id}/products": {
            "get": {
                "tags": [
                    "Products"
                ],
                "summary": "Get a list of products with pagination.",
                "operationId": "products-list",
                "parameters": [
                    {
                        "name": "shop_unique_id",
                        "in": "path",
                        "description": "Perform action on the shop which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "sort",
                        "in": "query",
                        "description": "Sorting is ascending by default and can be reversed by adding a hyphen (-) to the start of the property name.",
                        "explode": false,
                        "schema": {
                            "type": "array",
                            "items": {
                                "type": "string",
                                "enum": [
                                    "id",
                                    "-id",
                                    "created_at",
                                    "-created_at",
                                    "updated_at",
                                    "-updated_at",
                                    "price",
                                    "-price",
                                    "is_new_product",
                                    "-is_new_product",
                                    "is_home",
                                    "-is_home",
                                    "name",
                                    "-name"
                                ]
                            }
                        }
                    },
                    {
                        "name": "page",
                        "in": "query",
                        "description": "Starts from 1",
                        "schema": {
                            "type": "int32",
                            "default": "1"
                        }
                    },
                    {
                        "name": "per_page",
                        "in": "query",
                        "description": "Paginate by, min 5, max 50. Default 50.",
                        "schema": {
                            "type": "int32",
                            "default": "50"
                        }
                    },
                    {
                        "name": "filter[trashed]",
                        "in": "query",
                        "description": "Archive status. Options are `live`, `only`, `with`. `live` means only non archived items. `only` means only archived items. `with` means archived and live items.",
                        "schema": {
                            "type": "string",
                            "default": "live"
                        }
                    },
                    {
                        "name": "filter[name]",
                        "in": "query",
                        "description": "Search within product names",
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "filter[barcode]",
                        "in": "query",
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "filter[sku]",
                        "in": "query",
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "filter[is_active]",
                        "in": "query",
                        "schema": {
                            "type": "boolean",
                            "default": true
                        }
                    },
                    {
                        "name": "filter[is_new_product]",
                        "in": "query",
                        "schema": {
                            "type": "boolean"
                        }
                    },
                    {
                        "name": "filter[is_home]",
                        "in": "query",
                        "schema": {
                            "type": "boolean"
                        }
                    },
                    {
                        "name": "filter[categories.id]",
                        "in": "query",
                        "description": "Filter by category id",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "filter[created_at_between]",
                        "in": "query",
                        "description": "Filter by date created between. E.g. 01/12/2020-01/12/2021",
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "filter[updated_at_between]",
                        "in": "query",
                        "description": "Filter by date updated between. E.g. 01/12/2020-01/12/2021",
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "filter[price_gte]",
                        "in": "query",
                        "description": "Price greater than",
                        "schema": {
                            "type": "float"
                        }
                    },
                    {
                        "name": "filter[price_lte]",
                        "in": "query",
                        "description": "Price lower than",
                        "schema": {
                            "type": "float"
                        }
                    },
                    {
                        "name": "filter[has_unique_identifier]",
                        "in": "query",
                        "description": "Has remote_id, barcode or sku.",
                        "schema": {
                            "type": "boolean"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/PaginatedProductResource"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Unauthenticated",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "Forbidden",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Resource Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearer_token": {}
                    }
                ]
            },
            "post": {
                "tags": [
                    "Products"
                ],
                "summary": "Create a product. Or many products in batch.",
                "description": "To send many products at once, simply send an object with 'batch' key filled with products. {'batch': [{'name': 'Product 1'},{'name': 'Product 2'},{'name': 'Product 3'}]}",
                "operationId": "products-create",
                "parameters": [
                    {
                        "name": "shop_unique_id",
                        "in": "path",
                        "description": "Perform action on the shop which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "multipart/form-data": {
                            "schema": {
                                "allOf": [
                                    {
                                        "$ref": "#/components/schemas/ProductCreateRequest"
                                    }
                                ]
                            },
                            "encoding": {
                                "category_ids[]": {
                                    "explode": true
                                },
                                "images[]": {
                                    "explode": true
                                },
                                "images_as_urls[]": {
                                    "explode": true
                                },
                                "images_as_unique_ids[]": {
                                    "explode": true
                                },
                                "media[]": {
                                    "explode": true
                                }
                            }
                        }
                    }
                },
                "responses": {
                    "201": {
                        "description": "Successful operation",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/ProductResource"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Unauthenticated",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "Forbidden",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Resource Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Unprocessable Entity",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/UnprocessableEntityErrorResource"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearer_token": {}
                    }
                ]
            },
            "patch": {
                "tags": [
                    "Products"
                ],
                "summary": "Update many products.",
                "description": "Updates each product in batch by unique_id or remote_id. Only updated resources will return.",
                "operationId": "products-updateMany",
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "allOf": [
                                    {
                                        "$ref": "#/components/schemas/BatchProductUpdateRequest"
                                    }
                                ]
                            },
                            "encoding": {
                                "category_ids[]": {
                                    "explode": true
                                },
                                "images[]": {
                                    "explode": true
                                },
                                "images_as_urls[]": {
                                    "explode": true
                                }
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Successful operation",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/ProductResource"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Unauthenticated",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "Forbidden",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Resource Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Unprocessable Entity",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/UnprocessableEntityErrorResource"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearer_token": {}
                    }
                ]
            }
        },
        "/merchant-api/shops/{shop_unique_id}/products/{product_unique_id}": {
            "get": {
                "tags": [
                    "Products"
                ],
                "summary": "Get a product.",
                "operationId": "products-get",
                "parameters": [
                    {
                        "name": "shop_unique_id",
                        "in": "path",
                        "description": "Perform action on the shop which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "product_unique_id",
                        "in": "path",
                        "description": "Perform action on the product which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/ProductResource"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Unauthenticated",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "Forbidden",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Resource Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearer_token": {}
                    }
                ]
            },
            "delete": {
                "tags": [
                    "Products"
                ],
                "summary": "Delete a product.",
                "operationId": "products-delete",
                "parameters": [
                    {
                        "name": "shop_unique_id",
                        "in": "path",
                        "description": "Perform action on the shop which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "product_unique_id",
                        "in": "path",
                        "description": "Perform action on the product which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "204": {
                        "description": "Successful operation"
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Unauthenticated",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "Forbidden",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Resource Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearer_token": {}
                    }
                ]
            },
            "patch": {
                "tags": [
                    "Products"
                ],
                "summary": "Update a product.",
                "operationId": "products-update",
                "parameters": [
                    {
                        "name": "shop_unique_id",
                        "in": "path",
                        "description": "Perform action on the shop which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "product_unique_id",
                        "in": "path",
                        "description": "Perform action on the product which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "multipart/form-data": {
                            "schema": {
                                "allOf": [
                                    {
                                        "$ref": "#/components/schemas/ProductUpdateRequest"
                                    }
                                ]
                            },
                            "encoding": {
                                "category_ids[]": {
                                    "explode": true
                                },
                                "images[]": {
                                    "explode": true
                                },
                                "images_as_urls[]": {
                                    "explode": true
                                },
                                "images_as_unique_ids[]": {
                                    "explode": true
                                },
                                "media[]": {
                                    "explode": true
                                }
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Successful operation",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/ProductResource"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Unauthenticated",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "Forbidden",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Resource Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Unprocessable Entity",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/UnprocessableEntityErrorResource"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearer_token": {}
                    }
                ]
            }
        },
        "/merchant-api/shops/{shop_unique_id}/products/{product_unique_id}/mirror-patch": {
            "post": {
                "tags": [
                    "Products"
                ],
                "summary": "Update a product.",
                "operationId": "products-updateMirrorPatch",
                "parameters": [
                    {
                        "name": "shop_unique_id",
                        "in": "path",
                        "description": "Perform action on the shop which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "product_unique_id",
                        "in": "path",
                        "description": "Perform action on the product which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "multipart/form-data": {
                            "schema": {
                                "allOf": [
                                    {
                                        "$ref": "#/components/schemas/ProductUpdateRequest"
                                    }
                                ]
                            },
                            "encoding": {
                                "category_ids[]": {
                                    "explode": true
                                },
                                "images[]": {
                                    "explode": true
                                },
                                "images_as_urls[]": {
                                    "explode": true
                                }
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Successful operation",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/ProductResource"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Unauthenticated",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "Forbidden",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Resource Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Unprocessable Entity",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/UnprocessableEntityErrorResource"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearer_token": {}
                    }
                ]
            }
        },
        "/merchant-api/shops/{shop_unique_id}/products/sort": {
            "put": {
                "tags": [
                    "Products"
                ],
                "summary": "Sort products.",
                "operationId": "products-sort",
                "parameters": [
                    {
                        "name": "shop_unique_id",
                        "in": "path",
                        "description": "Perform action on the shop which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "multipart/form-data": {
                            "schema": {
                                "allOf": [
                                    {
                                        "$ref": "#/components/schemas/ProductSortRequest"
                                    }
                                ]
                            },
                            "encoding": {
                                "product_unique_ids[]": {
                                    "explode": true
                                }
                            }
                        }
                    }
                },
                "responses": {
                    "204": {
                        "description": "Successful operation"
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Unauthenticated",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "Forbidden",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Resource Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Unprocessable Entity",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/UnprocessableEntityErrorResource"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearer_token": {}
                    }
                ]
            }
        },
        "/merchant-api/shops/{shop_unique_id}/products/{product_unique_id}/features": {
            "get": {
                "tags": [
                    "Product Features"
                ],
                "summary": "Get a product features.",
                "operationId": "products-features-list",
                "parameters": [
                    {
                        "name": "shop_unique_id",
                        "in": "path",
                        "description": "Perform action on the shop which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "product_unique_id",
                        "in": "path",
                        "description": "Perform action on the product which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/ProductFeatureResource"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Unauthenticated",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "Forbidden",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Resource Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearer_token": {}
                    }
                ]
            },
            "post": {
                "tags": [
                    "Product Features"
                ],
                "summary": "Create a product feature.",
                "operationId": "products-features-create",
                "parameters": [
                    {
                        "name": "shop_unique_id",
                        "in": "path",
                        "description": "Perform action on the shop which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "product_unique_id",
                        "in": "path",
                        "description": "Perform action on the product which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "multipart/form-data": {
                            "schema": {
                                "allOf": [
                                    {
                                        "$ref": "#/components/schemas/ProductFeatureCreateRequest"
                                    }
                                ]
                            }
                        }
                    }
                },
                "responses": {
                    "201": {
                        "description": "Successful operation",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/ProductFeatureResource"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Unauthenticated",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "Forbidden",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Resource Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Unprocessable Entity",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/UnprocessableEntityErrorResource"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearer_token": {}
                    }
                ]
            }
        },
        "/merchant-api/shops/{shop_unique_id}/products/{product_unique_id}/features/{feature_unique_id}": {
            "get": {
                "tags": [
                    "Product Features"
                ],
                "summary": "Get a product feature.",
                "operationId": "products-features-get",
                "parameters": [
                    {
                        "name": "shop_unique_id",
                        "in": "path",
                        "description": "Perform action on the shop which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "product_unique_id",
                        "in": "path",
                        "description": "Perform action on the product which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "feature_unique_id",
                        "in": "path",
                        "description": "Perform action on the product feature which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/ProductFeatureResource"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Unauthenticated",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "Forbidden",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Resource Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearer_token": {}
                    }
                ]
            },
            "delete": {
                "tags": [
                    "Product Features"
                ],
                "summary": "Delete a product feature.",
                "operationId": "products-features-delete",
                "parameters": [
                    {
                        "name": "shop_unique_id",
                        "in": "path",
                        "description": "Perform action on the shop which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "product_unique_id",
                        "in": "path",
                        "description": "Perform action on the product which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "feature_unique_id",
                        "in": "path",
                        "description": "Perform action on the product feature which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "204": {
                        "description": "Successful operation"
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Unauthenticated",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "Forbidden",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Resource Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearer_token": {}
                    }
                ]
            },
            "patch": {
                "tags": [
                    "Product Features"
                ],
                "summary": "Update a product feature.",
                "operationId": "products-features-update",
                "parameters": [
                    {
                        "name": "shop_unique_id",
                        "in": "path",
                        "description": "Perform action on the shop which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "product_unique_id",
                        "in": "path",
                        "description": "Perform action on the product which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "feature_unique_id",
                        "in": "path",
                        "description": "Perform action on the product feature which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "multipart/form-data": {
                            "schema": {
                                "allOf": [
                                    {
                                        "$ref": "#/components/schemas/ProductFeatureUpdateRequest"
                                    }
                                ]
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Successful operation",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/ProductFeatureResource"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Unauthenticated",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "Forbidden",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Resource Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Unprocessable Entity",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/UnprocessableEntityErrorResource"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearer_token": {}
                    }
                ]
            }
        },
        "/merchant-api/shops/{shop_unique_id}/products/{product_unique_id}/features/{feature_unique_id}/mirror-patch": {
            "post": {
                "tags": [
                    "Product Features"
                ],
                "summary": "Update a product feature.",
                "operationId": "products-features-updateMirrorPatch",
                "parameters": [
                    {
                        "name": "shop_unique_id",
                        "in": "path",
                        "description": "Perform action on the shop which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "product_unique_id",
                        "in": "path",
                        "description": "Perform action on the product which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "feature_unique_id",
                        "in": "path",
                        "description": "Perform action on the product feature which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "multipart/form-data": {
                            "schema": {
                                "allOf": [
                                    {
                                        "$ref": "#/components/schemas/ProductFeatureUpdateRequest"
                                    }
                                ]
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Successful operation",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/ProductFeatureResource"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Unauthenticated",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "Forbidden",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Resource Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Unprocessable Entity",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/UnprocessableEntityErrorResource"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearer_token": {}
                    }
                ]
            }
        },
        "/merchant-api/shops/{shop_unique_id}/products/{product_unique_id}/features/{feature_unique_id}/options": {
            "get": {
                "tags": [
                    "Product Feature Options"
                ],
                "summary": "Get Product Feature Options.",
                "operationId": "products-features-options-list",
                "parameters": [
                    {
                        "name": "shop_unique_id",
                        "in": "path",
                        "description": "Perform action on the shop which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "product_unique_id",
                        "in": "path",
                        "description": "Perform action on the product which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "feature_unique_id",
                        "in": "path",
                        "description": "Perform action on the product feature which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/ProductFeatureOptionResource"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Unauthenticated",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "Forbidden",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Resource Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearer_token": {}
                    }
                ]
            },
            "post": {
                "tags": [
                    "Product Feature Options"
                ],
                "summary": "Create a product feature option.",
                "operationId": "products-features-options-create",
                "parameters": [
                    {
                        "name": "shop_unique_id",
                        "in": "path",
                        "description": "Perform action on the shop which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "product_unique_id",
                        "in": "path",
                        "description": "Perform action on the product which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "feature_unique_id",
                        "in": "path",
                        "description": "Perform action on the feature which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "multipart/form-data": {
                            "schema": {
                                "allOf": [
                                    {
                                        "$ref": "#/components/schemas/ProductFeatureOptionCreateRequest"
                                    }
                                ]
                            }
                        }
                    }
                },
                "responses": {
                    "201": {
                        "description": "Successful operation",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/ProductFeatureOptionResource"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Unauthenticated",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "Forbidden",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Resource Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Unprocessable Entity",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/UnprocessableEntityErrorResource"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearer_token": {}
                    }
                ]
            }
        },
        "/merchant-api/shops/{shop_unique_id}/products/{product_unique_id}/features/{feature_unique_id}/options/{option_unique_id}": {
            "get": {
                "tags": [
                    "Product Feature Options"
                ],
                "summary": "Get a product feature option.",
                "operationId": "products-features-options-get",
                "parameters": [
                    {
                        "name": "shop_unique_id",
                        "in": "path",
                        "description": "Perform action on the shop which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "product_unique_id",
                        "in": "path",
                        "description": "Perform action on the product which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "feature_unique_id",
                        "in": "path",
                        "description": "Perform action on the product feature which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "option_unique_id",
                        "in": "path",
                        "description": "Perform action on the product feature option which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/ProductFeatureOptionResource"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Unauthenticated",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "Forbidden",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Resource Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearer_token": {}
                    }
                ]
            },
            "delete": {
                "tags": [
                    "Product Feature Options"
                ],
                "summary": "Delete a product feature option.",
                "operationId": "products-features-options-delete",
                "parameters": [
                    {
                        "name": "shop_unique_id",
                        "in": "path",
                        "description": "Perform action on the shop which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "product_unique_id",
                        "in": "path",
                        "description": "Perform action on the product which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "feature_unique_id",
                        "in": "path",
                        "description": "Perform action on the product feature which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "option_unique_id",
                        "in": "path",
                        "description": "Perform action on the product feature option which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "204": {
                        "description": "Successful operation"
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Unauthenticated",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "Forbidden",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Resource Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearer_token": {}
                    }
                ]
            },
            "patch": {
                "tags": [
                    "Product Feature Options"
                ],
                "summary": "Update a product feature option.",
                "operationId": "products-features-options-update",
                "parameters": [
                    {
                        "name": "shop_unique_id",
                        "in": "path",
                        "description": "Perform action on the shop which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "product_unique_id",
                        "in": "path",
                        "description": "Perform action on the product which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "feature_unique_id",
                        "in": "path",
                        "description": "Perform action on the product feature which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "option_unique_id",
                        "in": "path",
                        "description": "Perform action on the product feature option which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "multipart/form-data": {
                            "schema": {
                                "allOf": [
                                    {
                                        "$ref": "#/components/schemas/ProductFeatureOptionUpdateRequest"
                                    }
                                ]
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Successful operation",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/ProductFeatureOptionResource"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Unauthenticated",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "Forbidden",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Resource Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Unprocessable Entity",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/UnprocessableEntityErrorResource"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearer_token": {}
                    }
                ]
            }
        },
        "/merchant-api/shops/{shop_unique_id}/products/{product_unique_id}/features/{feature_unique_id}/options/{option_unique_id}/mirror-patch": {
            "post": {
                "tags": [
                    "Product Feature Options"
                ],
                "summary": "Update a product feature option.",
                "operationId": "products-features-options-updateMirrorPatch",
                "parameters": [
                    {
                        "name": "shop_unique_id",
                        "in": "path",
                        "description": "Perform action on the shop which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "product_unique_id",
                        "in": "path",
                        "description": "Perform action on the product which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "feature_unique_id",
                        "in": "path",
                        "description": "Perform action on the product feature which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "option_unique_id",
                        "in": "path",
                        "description": "Perform action on the product feature option which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "multipart/form-data": {
                            "schema": {
                                "allOf": [
                                    {
                                        "$ref": "#/components/schemas/ProductFeatureOptionUpdateRequest"
                                    }
                                ]
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Successful operation",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/ProductFeatureOptionResource"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Unauthenticated",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "Forbidden",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Resource Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Unprocessable Entity",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/UnprocessableEntityErrorResource"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearer_token": {}
                    }
                ]
            }
        },
        "/merchant-api/auth/reset-password": {
            "patch": {
                "tags": [
                    "Auth"
                ],
                "summary": "Reset password.",
                "operationId": "auth-resetPassword",
                "requestBody": {
                    "required": true,
                    "content": {
                        "multipart/form-data": {
                            "schema": {
                                "allOf": [
                                    {
                                        "$ref": "#/components/schemas/ResetPasswordRequest"
                                    }
                                ]
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Successful operation",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/AuthResource"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Unauthenticated",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "Forbidden",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Resource Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Unprocessable Entity",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/UnprocessableEntityErrorResource"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearer_token": {}
                    }
                ]
            }
        },
        "/merchant-api/shops/{shop_unique_id}": {
            "patch": {
                "tags": [
                    "Shop"
                ],
                "summary": "Update shop fields.",
                "description": "Update predefined fields.",
                "operationId": "shops-update",
                "parameters": [
                    {
                        "name": "shop_unique_id",
                        "in": "path",
                        "description": "Perform action on the shop which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "multipart/form-data": {
                            "schema": {
                                "allOf": [
                                    {
                                        "$ref": "#/components/schemas/ShopRequest"
                                    }
                                ]
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Successful operation",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/ShopResource"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Unauthenticated",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "Forbidden",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Resource Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearer_token": {}
                    }
                ]
            }
        },
        "/merchant-api/shops/{shop_unique_id}/mirror-patch": {
            "post": {
                "tags": [
                    "Shop"
                ],
                "summary": "Update shop fields.",
                "description": "Update predefined fields.",
                "operationId": "shops-updateMirrorPatch",
                "parameters": [
                    {
                        "name": "shop_unique_id",
                        "in": "path",
                        "description": "Perform action on the shop which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "multipart/form-data": {
                            "schema": {
                                "allOf": [
                                    {
                                        "$ref": "#/components/schemas/ShopRequest"
                                    }
                                ]
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Successful operation",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/ShopResource"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Unauthenticated",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "Forbidden",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Resource Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearer_token": {}
                    }
                ]
            }
        },
        "/merchant-api/shops/{shop_unique_id}/tickets": {
            "get": {
                "tags": [
                    "Tickets"
                ],
                "summary": "Get a list of tickets with pagination.",
                "operationId": "tickets-list",
                "parameters": [
                    {
                        "name": "shop_unique_id",
                        "in": "path",
                        "description": "Perform action on the shop which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "sort",
                        "in": "query",
                        "description": "Sorting is ascending by default and can be reversed by adding a hyphen (-) to the start of the property name.",
                        "explode": false,
                        "schema": {
                            "type": "array",
                            "items": {
                                "type": "string",
                                "enum": [
                                    "id",
                                    "-id",
                                    "created_at",
                                    "-created_at",
                                    "updated_at",
                                    "-updated_at",
                                    "is_active",
                                    "-is_active",
                                    "is_read_by_admin",
                                    "-is_read_by_admin",
                                    "is_read_by_merchant",
                                    "-is_read_by_merchant",
                                    "title",
                                    "-title"
                                ]
                            }
                        }
                    },
                    {
                        "name": "page",
                        "in": "query",
                        "description": "Starts from 1",
                        "schema": {
                            "type": "int32",
                            "default": "1"
                        }
                    },
                    {
                        "name": "per_page",
                        "in": "query",
                        "description": "Paginate by, min 5, max 50. Default 50.",
                        "schema": {
                            "type": "int32",
                            "default": "50"
                        }
                    },
                    {
                        "name": "filter[title]",
                        "in": "query",
                        "description": "Search within titles.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "filter[is_active]",
                        "in": "query",
                        "schema": {
                            "type": "boolean"
                        }
                    },
                    {
                        "name": "filter[is_read_by_admin]",
                        "in": "query",
                        "schema": {
                            "type": "boolean"
                        }
                    },
                    {
                        "name": "filter[is_read_by_merchant]",
                        "in": "query",
                        "schema": {
                            "type": "boolean"
                        }
                    },
                    {
                        "name": "filter[messages.message]",
                        "in": "query",
                        "description": "Message contains.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "filter[created_at_between]",
                        "in": "query",
                        "description": "Filter by date created between. E.g. 01/12/2020-01/12/2021",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/PaginatedTicketResource"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Unauthenticated",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "Forbidden",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Resource Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearer_token": {}
                    }
                ]
            },
            "post": {
                "tags": [
                    "Tickets"
                ],
                "summary": "Create a ticket with a message.",
                "operationId": "tickets-create",
                "parameters": [
                    {
                        "name": "shop_unique_id",
                        "in": "path",
                        "description": "Perform action on the shop which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "multipart/form-data": {
                            "schema": {
                                "allOf": [
                                    {
                                        "$ref": "#/components/schemas/TicketCreateRequest"
                                    }
                                ]
                            },
                            "encoding": {
                                "images[]": {
                                    "explode": true
                                }
                            }
                        }
                    }
                },
                "responses": {
                    "201": {
                        "description": "Successful operation",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/TicketResource"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Unauthenticated",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "Forbidden",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Resource Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Unprocessable Entity",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/UnprocessableEntityErrorResource"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearer_token": {}
                    }
                ]
            }
        },
        "/merchant-api/shops/{shop_unique_id}/tickets/{ticket_unique_id}/markAsRead": {
            "get": {
                "tags": [
                    "Tickets"
                ],
                "summary": "Mark ticket as read.",
                "operationId": "tickets-markAsRead",
                "parameters": [
                    {
                        "name": "shop_unique_id",
                        "in": "path",
                        "description": "Perform action on the shop which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "ticket_unique_id",
                        "in": "path",
                        "description": "Perform action on the ticket which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/TicketResource"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Unauthenticated",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "Forbidden",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Resource Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearer_token": {}
                    }
                ]
            }
        },
        "/merchant-api/shops/{shop_unique_id}/tickets/{ticket_unique_id}": {
            "get": {
                "tags": [
                    "Tickets"
                ],
                "summary": "Get a ticket with messages.",
                "operationId": "tickets-get",
                "parameters": [
                    {
                        "name": "shop_unique_id",
                        "in": "path",
                        "description": "Perform action on the shop which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "ticket_unique_id",
                        "in": "path",
                        "description": "Perform action on the ticket which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/TicketResource"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Unauthenticated",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "Forbidden",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Resource Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearer_token": {}
                    }
                ]
            }
        },
        "/merchant-api/shops/{shop_unique_id}/tickets/{ticket_unique_id}/message": {
            "post": {
                "tags": [
                    "Tickets"
                ],
                "summary": "Send a ticket message.",
                "operationId": "tickets-message",
                "parameters": [
                    {
                        "name": "shop_unique_id",
                        "in": "path",
                        "description": "Perform action on the shop which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "ticket_unique_id",
                        "in": "path",
                        "description": "Perform action on the ticket which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "multipart/form-data": {
                            "schema": {
                                "allOf": [
                                    {
                                        "$ref": "#/components/schemas/TicketMessageCreateRequest"
                                    }
                                ]
                            }
                        }
                    }
                },
                "responses": {
                    "201": {
                        "description": "Successful operation",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/TicketMessageResource"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Unauthenticated",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "Forbidden",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Resource Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Unprocessable Entity",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/UnprocessableEntityErrorResource"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearer_token": {}
                    }
                ]
            }
        },
        "/merchant-api/shops/{shop_unique_id}/variations": {
            "get": {
                "tags": [
                    "Variations"
                ],
                "summary": "Get variation list.",
                "operationId": "variations-list",
                "parameters": [
                    {
                        "name": "shop_unique_id",
                        "in": "path",
                        "description": "Perform action on the shop which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "filter[name]",
                        "in": "query",
                        "description": "Search within name",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/VariationResource"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Unauthenticated",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "Forbidden",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Resource Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearer_token": {}
                    }
                ]
            },
            "post": {
                "tags": [
                    "Variations"
                ],
                "summary": "Create a variation.",
                "operationId": "variations-create",
                "parameters": [
                    {
                        "name": "shop_unique_id",
                        "in": "path",
                        "description": "Perform action on the shop which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "multipart/form-data": {
                            "schema": {
                                "allOf": [
                                    {
                                        "$ref": "#/components/schemas/VariationCreateRequest"
                                    }
                                ]
                            }
                        }
                    }
                },
                "responses": {
                    "201": {
                        "description": "Successful operation",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/VariationResource"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Unauthenticated",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "Forbidden",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Resource Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Unprocessable Entity",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/UnprocessableEntityErrorResource"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearer_token": {}
                    }
                ]
            }
        },
        "/merchant-api/shops/{shop_unique_id}/variations/{variation_unique_id}": {
            "get": {
                "tags": [
                    "Variations"
                ],
                "summary": "Get a variation.",
                "operationId": "variations-get",
                "parameters": [
                    {
                        "name": "shop_unique_id",
                        "in": "path",
                        "description": "Perform action on the shop which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "variation_unique_id",
                        "in": "path",
                        "description": "Perform action on the variation which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/VariationResource"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Unauthenticated",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "Forbidden",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Resource Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearer_token": {}
                    }
                ]
            },
            "delete": {
                "tags": [
                    "Variations"
                ],
                "summary": "Delete a variation.",
                "operationId": "variations-delete",
                "parameters": [
                    {
                        "name": "shop_unique_id",
                        "in": "path",
                        "description": "Perform action on the shop which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "variation_unique_id",
                        "in": "path",
                        "description": "Perform action on the variation which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "204": {
                        "description": "Successful operation"
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Unauthenticated",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "Forbidden",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Resource Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearer_token": {}
                    }
                ]
            },
            "patch": {
                "tags": [
                    "Variations"
                ],
                "summary": "Update a variation.",
                "operationId": "variations-update",
                "parameters": [
                    {
                        "name": "shop_unique_id",
                        "in": "path",
                        "description": "Perform action on the shop which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "variation_unique_id",
                        "in": "path",
                        "description": "Perform action on the variation which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "multipart/form-data": {
                            "schema": {
                                "allOf": [
                                    {
                                        "$ref": "#/components/schemas/VariationUpdateRequest"
                                    }
                                ]
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Successful operation",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/VariationResource"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Unauthenticated",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "Forbidden",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Resource Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Unprocessable Entity",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/UnprocessableEntityErrorResource"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearer_token": {}
                    }
                ]
            }
        },
        "/merchant-api/shops/{shop_unique_id}/variations/{variation_unique_id}/options": {
            "get": {
                "tags": [
                    "Variation options"
                ],
                "summary": "Get variation option list.",
                "operationId": "variations-options-list",
                "parameters": [
                    {
                        "name": "shop_unique_id",
                        "in": "path",
                        "description": "Perform action on the shop which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "variation_unique_id",
                        "in": "path",
                        "description": "Perform action on the variation which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "filter[name]",
                        "in": "query",
                        "description": "Search within name",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/VariationOptionResource"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Unauthenticated",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "Forbidden",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Resource Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearer_token": {}
                    }
                ]
            },
            "post": {
                "tags": [
                    "Variation options"
                ],
                "summary": "Create a variation option.",
                "operationId": "variations-options-create",
                "parameters": [
                    {
                        "name": "shop_unique_id",
                        "in": "path",
                        "description": "Perform action on the shop which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "variation_unique_id",
                        "in": "path",
                        "description": "Perform action on the variation which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "multipart/form-data": {
                            "schema": {
                                "allOf": [
                                    {
                                        "$ref": "#/components/schemas/VariationCreateRequest"
                                    }
                                ]
                            }
                        }
                    }
                },
                "responses": {
                    "201": {
                        "description": "Successful operation",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/VariationOptionResource"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Unauthenticated",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "Forbidden",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Resource Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Unprocessable Entity",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/UnprocessableEntityErrorResource"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearer_token": {}
                    }
                ]
            }
        },
        "/merchant-api/shops/{shop_unique_id}/variations/{variation_unique_id}/options/{variation_option_unique_id}": {
            "get": {
                "tags": [
                    "Variation options"
                ],
                "summary": "Get a variation option.",
                "operationId": "variations-options-get",
                "parameters": [
                    {
                        "name": "shop_unique_id",
                        "in": "path",
                        "description": "Perform action on the shop which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "variation_unique_id",
                        "in": "path",
                        "description": "Perform action on the variation which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "variation_option_unique_id",
                        "in": "path",
                        "description": "Perform action on the variation option which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/VariationOptionResource"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Unauthenticated",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "Forbidden",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Resource Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearer_token": {}
                    }
                ]
            },
            "delete": {
                "tags": [
                    "Variation options"
                ],
                "summary": "Delete a variation option.",
                "operationId": "variations-options-delete",
                "parameters": [
                    {
                        "name": "shop_unique_id",
                        "in": "path",
                        "description": "Perform action on the shop which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "variation_unique_id",
                        "in": "path",
                        "description": "Perform action on the variation which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "variation_option_unique_id",
                        "in": "path",
                        "description": "Perform action on the variation option which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "204": {
                        "description": "Successful operation"
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Unauthenticated",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "Forbidden",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Resource Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearer_token": {}
                    }
                ]
            },
            "patch": {
                "tags": [
                    "Variation options"
                ],
                "summary": "Update a variation option.",
                "operationId": "variations-options-update",
                "parameters": [
                    {
                        "name": "shop_unique_id",
                        "in": "path",
                        "description": "Perform action on the shop which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "variation_unique_id",
                        "in": "path",
                        "description": "Perform action on the variation which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "variation_option_unique_id",
                        "in": "path",
                        "description": "Perform action on the variation option which belongs to this unique id.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "multipart/form-data": {
                            "schema": {
                                "allOf": [
                                    {
                                        "$ref": "#/components/schemas/VariationOptionUpdateRequest"
                                    }
                                ]
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Successful operation",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/VariationOptionResource"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Unauthenticated",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "Forbidden",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Resource Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericErrorResource"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Unprocessable Entity",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/UnprocessableEntityErrorResource"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearer_token": {}
                    }
                ]
            }
        }
    },
    "components": {
        "schemas": {
            "AnnouncementCreateRequest": {
                "title": "Announcement create request",
                "description": "Field request body data.",
                "required": [
                    "text"
                ],
                "properties": {
                    "text": {
                        "type": "string"
                    },
                    "order": {
                        "type": "integer"
                    },
                    "is_active": {
                        "type": "boolean",
                        "default": true
                    },
                    "is_home": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_category": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_basket": {
                        "type": "boolean",
                        "default": false
                    },
                    "category_ids[]": {
                        "type": "array",
                        "items": {
                            "type": "integer"
                        }
                    }
                },
                "type": "object"
            },
            "AnnouncementUpdateRequest": {
                "title": "Announcement update request",
                "description": "Field request body data.",
                "required": [
                    "text"
                ],
                "properties": {
                    "text": {
                        "type": "string"
                    },
                    "order": {
                        "type": "integer"
                    },
                    "is_active": {
                        "type": "boolean",
                        "default": true
                    },
                    "is_home": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_category": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_basket": {
                        "type": "boolean",
                        "default": false
                    }
                },
                "type": "object"
            },
            "BlogCategoryCreateRequest": {
                "title": "Blog category create request",
                "description": "Blog category create request body data.",
                "required": [
                    "title"
                ],
                "properties": {
                    "title": {
                        "description": "Translatable field. Can be string or object with language codes as keys. Example: {\"en\": \"Category Name\", \"tr\": \"Kategori Adı\"}",
                        "oneOf": [
                            {
                                "type": "string"
                            },
                            {
                                "type": "object"
                            }
                        ]
                    },
                    "meta_title": {
                        "description": "Translatable field. Can be string or object with language codes as keys.",
                        "default": "",
                        "oneOf": [
                            {
                                "type": "string"
                            },
                            {
                                "type": "object"
                            }
                        ]
                    },
                    "meta_keywords": {
                        "type": "string",
                        "default": "",
                        "maxLength": 200,
                        "nullable": true
                    },
                    "meta_description": {
                        "description": "Translatable field. Can be string or object with language codes as keys.",
                        "default": "",
                        "oneOf": [
                            {
                                "type": "string"
                            },
                            {
                                "type": "object"
                            }
                        ]
                    },
                    "is_active": {
                        "type": "boolean",
                        "default": true,
                        "nullable": false
                    }
                },
                "type": "object"
            },
            "BlogCategoryUpdateRequest": {
                "title": "Blog category update request",
                "description": "Blog category update request body data.",
                "properties": {
                    "title": {
                        "description": "Translatable field. Can be string or object with language codes as keys. Example: {\"en\": \"Category Name\", \"tr\": \"Kategori Adı\"}",
                        "oneOf": [
                            {
                                "type": "string"
                            },
                            {
                                "type": "object"
                            }
                        ]
                    },
                    "meta_title": {
                        "description": "Translatable field. Can be string or object with language codes as keys.",
                        "default": "",
                        "oneOf": [
                            {
                                "type": "string"
                            },
                            {
                                "type": "object"
                            }
                        ]
                    },
                    "meta_keywords": {
                        "type": "string",
                        "default": "",
                        "maxLength": 200,
                        "nullable": true
                    },
                    "meta_description": {
                        "description": "Translatable field. Can be string or object with language codes as keys.",
                        "default": "",
                        "oneOf": [
                            {
                                "type": "string"
                            },
                            {
                                "type": "object"
                            }
                        ]
                    },
                    "is_active": {
                        "type": "boolean",
                        "default": true,
                        "nullable": true
                    }
                },
                "type": "object"
            },
            "BlogPostCreateRequest": {
                "title": "Blog post create request",
                "description": "Blog post create request body data.",
                "required": [
                    "title",
                    "short_description",
                    "category_unique_ids[]"
                ],
                "properties": {
                    "category_unique_ids[]": {
                        "description": "Array of blog category unique IDs",
                        "type": "array",
                        "items": {
                            "type": "string"
                        }
                    },
                    "image": {
                        "description": "Image file. Mime types: jpg, jpeg, png. Max 2MB.",
                        "type": "string",
                        "format": "binary"
                    },
                    "image_url": {
                        "description": "Image URL as alternative to file upload.",
                        "type": "string",
                        "default": "",
                        "nullable": true
                    },
                    "title": {
                        "description": "Translatable field. Can be string or object with language codes as keys. Example: {\"en\": \"Post Title\", \"tr\": \"Yazı Başlığı\"}",
                        "oneOf": [
                            {
                                "type": "string"
                            },
                            {
                                "type": "object"
                            }
                        ]
                    },
                    "short_description": {
                        "description": "Translatable field. Can be string or object with language codes as keys.",
                        "oneOf": [
                            {
                                "type": "string"
                            },
                            {
                                "type": "object"
                            }
                        ]
                    },
                    "description": {
                        "description": "Translatable field. Can be string or object with language codes as keys.",
                        "default": "",
                        "oneOf": [
                            {
                                "type": "string"
                            },
                            {
                                "type": "object"
                            }
                        ]
                    },
                    "meta_title": {
                        "description": "Translatable field. Can be string or object with language codes as keys.",
                        "default": "",
                        "oneOf": [
                            {
                                "type": "string"
                            },
                            {
                                "type": "object"
                            }
                        ]
                    },
                    "meta_keywords": {
                        "type": "string",
                        "default": "",
                        "maxLength": 200,
                        "nullable": true
                    },
                    "meta_description": {
                        "description": "Translatable field. Can be string or object with language codes as keys.",
                        "default": "",
                        "oneOf": [
                            {
                                "type": "string"
                            },
                            {
                                "type": "object"
                            }
                        ]
                    },
                    "is_active": {
                        "type": "boolean",
                        "default": true,
                        "nullable": false
                    }
                },
                "type": "object"
            },
            "BlogPostUpdateRequest": {
                "title": "Blog post update request",
                "description": "Blog post update request body data.",
                "properties": {
                    "category_unique_ids[]": {
                        "description": "Array of blog category unique IDs",
                        "type": "array",
                        "items": {
                            "type": "string"
                        }
                    },
                    "image": {
                        "description": "Image file. Mime types: jpg, jpeg, png. Max 2MB.",
                        "type": "string",
                        "format": "binary"
                    },
                    "image_url": {
                        "description": "Image URL as alternative to file upload.",
                        "type": "string",
                        "default": "",
                        "nullable": true
                    },
                    "title": {
                        "description": "Translatable field. Can be string or object with language codes as keys. Example: {\"en\": \"Post Title\", \"tr\": \"Yazı Başlığı\"}",
                        "oneOf": [
                            {
                                "type": "string"
                            },
                            {
                                "type": "object"
                            }
                        ]
                    },
                    "short_description": {
                        "description": "Translatable field. Can be string or object with language codes as keys.",
                        "oneOf": [
                            {
                                "type": "string"
                            },
                            {
                                "type": "object"
                            }
                        ]
                    },
                    "description": {
                        "description": "Translatable field. Can be string or object with language codes as keys.",
                        "default": "",
                        "oneOf": [
                            {
                                "type": "string"
                            },
                            {
                                "type": "object"
                            }
                        ]
                    },
                    "meta_title": {
                        "description": "Translatable field. Can be string or object with language codes as keys.",
                        "default": "",
                        "oneOf": [
                            {
                                "type": "string"
                            },
                            {
                                "type": "object"
                            }
                        ]
                    },
                    "meta_keywords": {
                        "type": "string",
                        "default": "",
                        "maxLength": 200,
                        "nullable": true
                    },
                    "meta_description": {
                        "description": "Translatable field. Can be string or object with language codes as keys.",
                        "default": "",
                        "oneOf": [
                            {
                                "type": "string"
                            },
                            {
                                "type": "object"
                            }
                        ]
                    },
                    "is_active": {
                        "type": "boolean",
                        "default": true,
                        "nullable": true
                    }
                },
                "type": "object"
            },
            "BrandCreateRequest": {
                "title": "Brand create request",
                "description": "Field request body data.",
                "required": [
                    "name"
                ],
                "properties": {
                    "name": {
                        "type": "string",
                        "default": "",
                        "maxLength": 100
                    }
                },
                "type": "object"
            },
            "BrandUpdateRequest": {
                "title": "Brand update request",
                "description": "Field request body data.",
                "required": [
                    "name"
                ],
                "properties": {
                    "name": {
                        "type": "string",
                        "default": "",
                        "maxLength": 100
                    }
                },
                "type": "object"
            },
            "CategoryCreateRequest": {
                "title": "Create Category request",
                "description": "Field request body data.",
                "required": [
                    "name",
                    "is_active"
                ],
                "properties": {
                    "name": {
                        "type": "string"
                    },
                    "is_active": {
                        "type": "boolean"
                    },
                    "is_installment_disabled": {
                        "type": "boolean"
                    },
                    "parent_id": {
                        "type": "integer"
                    },
                    "order": {
                        "description": "Category descending sort order. Starts from 0.",
                        "type": "integer"
                    },
                    "image": {
                        "description": "Mime types; jpg, png. Max 2 MB.",
                        "type": "string",
                        "format": "binary"
                    },
                    "meta_title": {
                        "type": "string"
                    },
                    "meta_keywords": {
                        "type": "string"
                    },
                    "meta_description": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "CategoryUpdateRequest": {
                "title": "Update Category request",
                "description": "Field request body data.",
                "required": [],
                "properties": {
                    "name": {
                        "type": "string"
                    },
                    "is_active": {
                        "type": "boolean"
                    },
                    "is_installment_disabled": {
                        "type": "boolean"
                    },
                    "parent_id": {
                        "type": "integer"
                    },
                    "order": {
                        "description": "Category descending sort order. Starts from 0.",
                        "type": "integer"
                    },
                    "image": {
                        "description": "Mime types; jpg, png. Max 2 MB.",
                        "type": "string",
                        "format": "binary"
                    },
                    "meta_title": {
                        "type": "string"
                    },
                    "meta_keywords": {
                        "type": "string"
                    },
                    "meta_description": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "ChangeStatusRequest": {
                "title": "ChangeStatusRequest",
                "description": "Change consumer status request body data.",
                "required": [
                    "status"
                ],
                "properties": {
                    "status": {
                        "description": "New status for the consumer.",
                        "type": "string",
                        "enum": [
                            "unverified",
                            "verified",
                            "banned"
                        ],
                        "nullable": false
                    }
                },
                "type": "object"
            },
            "ConsumerGroupAssignRequest": {
                "title": "ConsumerGroupAssignRequest",
                "description": "Assign a consumer to a group request body data.",
                "required": [],
                "properties": {
                    "consumer_group_unique_id": {
                        "description": "Group unique ID or null to unassign the consumer from their current group.",
                        "type": "string",
                        "nullable": true
                    }
                },
                "type": "object"
            },
            "ConsumerGroupBulkAssignRequest": {
                "title": "ConsumerGroupBulkAssignRequest",
                "description": "Bulk assign consumers to a group request body data.",
                "required": [
                    "consumer_unique_ids",
                    "consumer_group_unique_id"
                ],
                "properties": {
                    "consumer_unique_ids": {
                        "description": "Array of consumer unique IDs to assign.",
                        "type": "array",
                        "items": {
                            "type": "string"
                        },
                        "nullable": false
                    },
                    "consumer_group_unique_id": {
                        "description": "Unique ID of the consumer group to assign the consumers to.",
                        "type": "string",
                        "nullable": false
                    }
                },
                "type": "object"
            },
            "ConsumerGroupCreateRequest": {
                "title": "ConsumerGroupCreateRequest",
                "description": "Create consumer group request body data.",
                "required": [
                    "name"
                ],
                "properties": {
                    "name": {
                        "description": "Name of the consumer group.",
                        "type": "string",
                        "nullable": false
                    },
                    "description": {
                        "description": "Description of the consumer group.",
                        "type": "string",
                        "nullable": true
                    },
                    "email_suffix": {
                        "description": "Email suffix used to auto-assign consumers to this group.",
                        "type": "string",
                        "nullable": true
                    },
                    "price_list_number": {
                        "description": "Price list number assigned to this group.",
                        "type": "integer",
                        "nullable": true
                    },
                    "global_discount_percentage": {
                        "description": "Global discount percentage applied to all orders.",
                        "type": "number",
                        "nullable": true
                    },
                    "min_order_amount": {
                        "description": "Minimum order amount required.",
                        "type": "number",
                        "nullable": true
                    },
                    "min_order_quantity": {
                        "description": "Minimum order quantity required.",
                        "type": "integer",
                        "nullable": true
                    },
                    "payment_term_days": {
                        "description": "Payment term in days.",
                        "type": "integer",
                        "nullable": true
                    },
                    "credit_limit": {
                        "description": "Credit limit for the group.",
                        "type": "number",
                        "nullable": true
                    },
                    "credit_min_order_amount": {
                        "description": "Minimum order amount required to use credit.",
                        "type": "number",
                        "nullable": true
                    },
                    "credit_max_usage_type": {
                        "description": "How the max credit usage is calculated: `percentage` or `fixed`.",
                        "type": "string",
                        "enum": [
                            "percentage",
                            "fixed"
                        ],
                        "nullable": true
                    },
                    "credit_max_usage_value": {
                        "description": "Value for the max credit usage limit.",
                        "type": "number",
                        "nullable": true
                    },
                    "is_active": {
                        "description": "Whether the consumer group is active.",
                        "type": "boolean",
                        "nullable": false
                    }
                },
                "type": "object"
            },
            "ConsumerGroupRemoveVisibilityRequest": {
                "title": "ConsumerGroupRemoveVisibilityRequest",
                "description": "Remove visibility rule for a consumer group request body data.",
                "required": [
                    "visibilityable_type",
                    "visibilityable_id"
                ],
                "properties": {
                    "visibilityable_type": {
                        "description": "Type of entity the visibility rule applies to.",
                        "type": "string",
                        "enum": [
                            "product",
                            "category"
                        ],
                        "nullable": false
                    },
                    "visibilityable_id": {
                        "description": "ID of the entity the visibility rule applies to.",
                        "type": "integer",
                        "nullable": false
                    }
                },
                "type": "object"
            },
            "ConsumerGroupSetCategoryDiscountRequest": {
                "title": "ConsumerGroupSetCategoryDiscountRequest",
                "description": "Set category discount for a consumer group request body data.",
                "required": [
                    "category_id",
                    "discount_percentage"
                ],
                "properties": {
                    "category_id": {
                        "description": "ID of the category to apply the discount to.",
                        "type": "integer",
                        "nullable": false
                    },
                    "discount_percentage": {
                        "description": "Discount percentage to apply to the category.",
                        "type": "number",
                        "nullable": false
                    }
                },
                "type": "object"
            },
            "ConsumerGroupSetVisibilityRequest": {
                "title": "ConsumerGroupSetVisibilityRequest",
                "description": "Set visibility rule for a consumer group request body data.",
                "required": [
                    "visibilityable_type",
                    "visibilityable_id",
                    "visibility_type"
                ],
                "properties": {
                    "visibilityable_type": {
                        "description": "Type of entity the visibility rule applies to.",
                        "type": "string",
                        "enum": [
                            "product",
                            "category"
                        ],
                        "nullable": false
                    },
                    "visibilityable_id": {
                        "description": "ID of the entity the visibility rule applies to.",
                        "type": "integer",
                        "nullable": false
                    },
                    "visibility_type": {
                        "description": "Whether to show or hide the entity for this group.",
                        "type": "string",
                        "enum": [
                            "show",
                            "hide"
                        ],
                        "nullable": false
                    }
                },
                "type": "object"
            },
            "ConsumerGroupUpdateRequest": {
                "title": "ConsumerGroupUpdateRequest",
                "description": "Update consumer group request body data.",
                "required": [],
                "properties": {
                    "name": {
                        "description": "Name of the consumer group.",
                        "type": "string",
                        "nullable": false
                    },
                    "description": {
                        "description": "Description of the consumer group.",
                        "type": "string",
                        "nullable": true
                    },
                    "email_suffix": {
                        "description": "Email suffix used to auto-assign consumers to this group.",
                        "type": "string",
                        "nullable": true
                    },
                    "price_list_number": {
                        "description": "Price list number assigned to this group.",
                        "type": "integer",
                        "nullable": true
                    },
                    "global_discount_percentage": {
                        "description": "Global discount percentage applied to all orders.",
                        "type": "number",
                        "nullable": true
                    },
                    "min_order_amount": {
                        "description": "Minimum order amount required.",
                        "type": "number",
                        "nullable": true
                    },
                    "min_order_quantity": {
                        "description": "Minimum order quantity required.",
                        "type": "integer",
                        "nullable": true
                    },
                    "payment_term_days": {
                        "description": "Payment term in days.",
                        "type": "integer",
                        "nullable": true
                    },
                    "credit_limit": {
                        "description": "Credit limit for the group.",
                        "type": "number",
                        "nullable": true
                    },
                    "credit_min_order_amount": {
                        "description": "Minimum order amount required to use credit.",
                        "type": "number",
                        "nullable": true
                    },
                    "credit_max_usage_type": {
                        "description": "How the max credit usage is calculated: `percentage` or `fixed`.",
                        "type": "string",
                        "enum": [
                            "percentage",
                            "fixed"
                        ],
                        "nullable": true
                    },
                    "credit_max_usage_value": {
                        "description": "Value for the max credit usage limit.",
                        "type": "number",
                        "nullable": true
                    },
                    "is_active": {
                        "description": "Whether the consumer group is active.",
                        "type": "boolean",
                        "nullable": false
                    }
                },
                "type": "object"
            },
            "CreateConsumerRequest": {
                "title": "CreateConsumerRequest",
                "description": "Create consumer request body data.",
                "required": [
                    "name",
                    "email",
                    "phone"
                ],
                "properties": {
                    "name": {
                        "description": "Full name of the consumer.",
                        "type": "string",
                        "nullable": false
                    },
                    "email": {
                        "description": "Email address of the consumer.",
                        "type": "string",
                        "format": "email",
                        "nullable": false
                    },
                    "phone": {
                        "description": "Phone number of the consumer.",
                        "type": "string",
                        "nullable": false
                    },
                    "tc_no": {
                        "description": "Turkish national ID number.",
                        "type": "string",
                        "nullable": true
                    }
                },
                "type": "object"
            },
            "HookCreateRequest": {
                "title": "Hook create request",
                "description": "Field request body data.",
                "required": [
                    "name",
                    "action",
                    "url",
                    "method"
                ],
                "properties": {
                    "name": {
                        "type": "string",
                        "default": "",
                        "maxLength": 255
                    },
                    "action": {
                        "description": "order_created|order_updated|product_created|product_updated",
                        "type": "string",
                        "default": "",
                        "maxLength": 255
                    },
                    "url": {
                        "type": "string",
                        "default": "",
                        "maxLength": 255
                    },
                    "method": {
                        "description": "post|put|patch|delete",
                        "type": "string",
                        "default": "",
                        "maxLength": 255
                    }
                },
                "type": "object"
            },
            "HookUpdateRequest": {
                "title": "Hook update request",
                "description": "Field request body data.",
                "required": [
                    "name",
                    "action",
                    "url",
                    "method"
                ],
                "properties": {
                    "name": {
                        "type": "string",
                        "default": "",
                        "maxLength": 255
                    },
                    "action": {
                        "description": "order_created|order_updated|product_created|product_updated",
                        "type": "string",
                        "default": "",
                        "maxLength": 255
                    },
                    "url": {
                        "type": "string",
                        "default": "",
                        "maxLength": 255
                    },
                    "method": {
                        "description": "post|put|patch|delete",
                        "type": "string",
                        "default": "",
                        "maxLength": 255
                    }
                },
                "type": "object"
            },
            "ImageCreateRequest": {
                "title": "Image create request",
                "description": "Field request body data.",
                "required": [
                    "file"
                ],
                "properties": {
                    "file": {
                        "description": "Mime types; jpg, png, webp. Up to 5 MB.",
                        "type": "string",
                        "format": "binary"
                    }
                },
                "type": "object"
            },
            "LoginRequest": {
                "title": "Login as merchant request",
                "description": "Field request body data.",
                "required": [
                    "email",
                    "password"
                ],
                "properties": {
                    "email": {
                        "type": "string"
                    },
                    "password": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "MakeAdjustmentRequest": {
                "title": "MakeAdjustmentRequest",
                "description": "Make a credit adjustment for a consumer request body data.",
                "required": [
                    "amount",
                    "description"
                ],
                "properties": {
                    "amount": {
                        "description": "Adjustment amount. Can be negative to deduct credit.",
                        "type": "number",
                        "nullable": false
                    },
                    "description": {
                        "description": "Description or reason for the adjustment.",
                        "type": "string",
                        "nullable": false
                    }
                },
                "type": "object"
            },
            "MerchantRefreshTokenRequest": {
                "title": "Refresh token request",
                "description": "Field request body data.",
                "required": [
                    "token"
                ],
                "properties": {
                    "token": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "MerchantRegisterRequest": {
                "title": "Create merchant request",
                "description": "Field request body data.",
                "required": [
                    "name",
                    "phone",
                    "email",
                    "password",
                    "password_confirmation",
                    "shop_name"
                ],
                "properties": {
                    "name": {
                        "type": "string"
                    },
                    "phone": {
                        "type": "string"
                    },
                    "email": {
                        "type": "string"
                    },
                    "password": {
                        "type": "string"
                    },
                    "password_confirmation": {
                        "type": "string"
                    },
                    "shop_name": {
                        "type": "string"
                    },
                    "franchise_unique_id": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "MerchantUpdateRequest": {
                "title": "Merchant update request",
                "description": "Field request body data.",
                "required": [],
                "properties": {
                    "name": {
                        "type": "string",
                        "maxLength": 50,
                        "minLength": 3,
                        "nullable": true
                    },
                    "phone": {
                        "description": "Format e.g. +905554443322",
                        "type": "string",
                        "maxLength": 50,
                        "minLength": 3,
                        "nullable": false
                    },
                    "email": {
                        "type": "string"
                    },
                    "current_password": {
                        "type": "string"
                    },
                    "password": {
                        "type": "string"
                    },
                    "password_confirmation": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "AdditionalService": {
                "title": "Additional Service",
                "description": "Additional services",
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "unique_id": {
                        "type": "string"
                    },
                    "title": {
                        "type": "string"
                    },
                    "description": {
                        "type": "string"
                    },
                    "requested": {
                        "description": "Did send request.",
                        "type": "boolean"
                    },
                    "status": {
                        "description": "Did request accepted.",
                        "type": "boolean"
                    },
                    "image": {
                        "$ref": "#/components/schemas/Image"
                    },
                    "updated_at": {
                        "type": "string",
                        "format": "date"
                    },
                    "created_at": {
                        "type": "string",
                        "format": "date"
                    }
                },
                "type": "object",
                "xml": {
                    "name": "Area"
                }
            },
            "Announcement": {
                "title": "Announcement",
                "description": "Announcements",
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "unique_id": {
                        "type": "string"
                    },
                    "shop_id": {
                        "type": "string"
                    },
                    "text": {
                        "type": "string"
                    },
                    "order": {
                        "description": "Position",
                        "type": "integer"
                    },
                    "is_active": {
                        "type": "boolean"
                    },
                    "is_home": {
                        "type": "boolean"
                    },
                    "is_category": {
                        "type": "boolean"
                    },
                    "is_basket": {
                        "type": "boolean"
                    },
                    "categories": {
                        "description": "Related product categories.",
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/Category"
                        }
                    },
                    "updated_at": {
                        "type": "string",
                        "format": "date"
                    },
                    "created_at": {
                        "type": "string",
                        "format": "date"
                    }
                },
                "type": "object",
                "xml": {
                    "name": "Announcement"
                }
            },
            "Area": {
                "title": "Area",
                "description": "Delivery area",
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "description": {
                        "type": "string"
                    },
                    "city": {
                        "$ref": "#/components/schemas/City"
                    }
                },
                "type": "object",
                "xml": {
                    "name": "Area"
                }
            },
            "Auth": {
                "title": "Auth",
                "description": "Auth",
                "properties": {
                    "access_token": {
                        "type": "string"
                    },
                    "token_type": {
                        "type": "string"
                    },
                    "expires_in": {
                        "description": "Token TTL in seconds. ",
                        "type": "integer"
                    }
                },
                "type": "object",
                "xml": {
                    "name": "Auth"
                }
            },
            "BlogCategory": {
                "title": "BlogCategory",
                "description": "Blog category model",
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "unique_id": {
                        "type": "string"
                    },
                    "shop_id": {
                        "type": "integer"
                    },
                    "title": {
                        "description": "Translatable field. Can be string or object with language codes."
                    },
                    "slug": {
                        "type": "string"
                    },
                    "meta_title": {
                        "description": "Translatable field. Can be string or object with language codes."
                    },
                    "meta_keywords": {
                        "type": "string"
                    },
                    "meta_description": {
                        "description": "Translatable field. Can be string or object with language codes."
                    },
                    "ordered": {
                        "type": "integer"
                    },
                    "is_active": {
                        "type": "boolean"
                    },
                    "url": {
                        "type": "string"
                    },
                    "posts_count": {
                        "type": "integer"
                    },
                    "posts": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/BlogPost"
                        }
                    },
                    "created_at": {
                        "type": "string",
                        "format": "date"
                    },
                    "updated_at": {
                        "type": "string",
                        "format": "date"
                    }
                },
                "type": "object",
                "xml": {
                    "name": "BlogCategory"
                }
            },
            "BlogPost": {
                "title": "BlogPost",
                "description": "Blog post model",
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "unique_id": {
                        "type": "string"
                    },
                    "shop_id": {
                        "type": "integer"
                    },
                    "title": {
                        "description": "Translatable field. Can be string or object with language codes."
                    },
                    "slug": {
                        "type": "string"
                    },
                    "short_description": {
                        "description": "Translatable field. Can be string or object with language codes."
                    },
                    "description": {
                        "description": "Translatable field. Can be string or object with language codes."
                    },
                    "meta_title": {
                        "description": "Translatable field. Can be string or object with language codes."
                    },
                    "meta_keywords": {
                        "type": "string"
                    },
                    "meta_description": {
                        "description": "Translatable field. Can be string or object with language codes."
                    },
                    "is_active": {
                        "type": "boolean"
                    },
                    "url": {
                        "type": "string"
                    },
                    "image": {
                        "$ref": "#/components/schemas/Image"
                    },
                    "categories": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/BlogCategory"
                        }
                    },
                    "created_at": {
                        "type": "string",
                        "format": "date"
                    },
                    "updated_at": {
                        "type": "string",
                        "format": "date"
                    }
                },
                "type": "object",
                "xml": {
                    "name": "BlogPost"
                }
            },
            "Brand": {
                "title": "Brand",
                "description": "Brand",
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "unique_id": {
                        "type": "string"
                    },
                    "name": {
                        "type": "string"
                    }
                },
                "type": "object",
                "xml": {
                    "name": "Brand"
                }
            },
            "Category": {
                "title": "Category",
                "description": "Product category model",
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "unique_id": {
                        "type": "string"
                    },
                    "parent_id": {
                        "type": "integer"
                    },
                    "shop_id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "slug": {
                        "type": "string"
                    },
                    "order": {
                        "type": "integer"
                    },
                    "is_active": {
                        "type": "boolean"
                    },
                    "product_order": {
                        "type": "string"
                    },
                    "updated_at": {
                        "type": "string",
                        "format": "date"
                    },
                    "created_at": {
                        "type": "string",
                        "format": "date"
                    },
                    "deleted_at": {
                        "type": "string",
                        "format": "date"
                    },
                    "sub_categories": {
                        "title": "Category[ ]",
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/Category"
                        },
                        "default": "Category[ ]"
                    },
                    "image": {
                        "$ref": "#/components/schemas/Image"
                    },
                    "meta_title": {
                        "type": "string"
                    },
                    "meta_keywords": {
                        "type": "string"
                    },
                    "meta_description": {
                        "type": "string"
                    },
                    "is_installment_disabled": {
                        "type": "boolean"
                    }
                },
                "type": "object",
                "xml": {
                    "name": "Category"
                }
            },
            "City": {
                "title": "City",
                "description": "City",
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "plate_code": {
                        "type": "integer"
                    }
                },
                "type": "object",
                "xml": {
                    "name": "City"
                }
            },
            "Currency": {
                "title": "Currency",
                "description": "Currency",
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "symbol": {
                        "type": "string"
                    },
                    "code": {
                        "type": "string"
                    },
                    "code3": {
                        "type": "string"
                    },
                    "locale": {
                        "type": "string"
                    }
                },
                "type": "object",
                "xml": {
                    "name": "Currency"
                }
            },
            "Date": {
                "title": "Date",
                "description": "Date model",
                "properties": {
                    "date": {
                        "type": "string"
                    },
                    "timezone_type": {
                        "type": "integer"
                    },
                    "timezone": {
                        "type": "string"
                    }
                },
                "type": "object",
                "xml": {
                    "name": "Date"
                }
            },
            "DeliveryPoint": {
                "title": "DeliveryPoint",
                "description": "DeliveryPoint",
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "unique_id": {
                        "type": "string"
                    },
                    "name": {
                        "type": "string"
                    },
                    "shop_id": {
                        "type": "integer"
                    },
                    "qr_image_url": {
                        "type": "string"
                    },
                    "delivery_point_access_url": {
                        "type": "string"
                    }
                },
                "type": "object",
                "xml": {
                    "name": "DeliveryPoint"
                }
            },
            "DeliveryType": {
                "title": "DeliveryType",
                "description": "DeliveryType",
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    }
                },
                "type": "object",
                "xml": {
                    "name": "DeliveryType"
                }
            },
            "District": {
                "title": "District",
                "description": "Districy",
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    }
                },
                "type": "object",
                "xml": {
                    "name": "District"
                }
            },
            "Hook": {
                "title": "Hook",
                "description": "Hooks",
                "properties": {
                    "unique_id": {
                        "type": "string"
                    },
                    "shop_id": {
                        "type": "string"
                    },
                    "name": {
                        "type": "string"
                    },
                    "action": {
                        "description": "order_created|order_updated|product_created|product_updated",
                        "type": "string"
                    },
                    "url": {
                        "type": "string"
                    },
                    "method": {
                        "description": "GET|POST|PATCH|PUT|DELETE",
                        "type": "string"
                    }
                },
                "type": "object",
                "xml": {
                    "name": "Hook"
                }
            },
            "Image": {
                "title": "Image",
                "description": "Image model",
                "properties": {
                    "unique_id": {
                        "type": "string"
                    },
                    "url": {
                        "type": "string"
                    },
                    "is_optimized": {
                        "type": "boolean"
                    },
                    "created_at": {
                        "type": "string",
                        "format": "date"
                    },
                    "mobile_version": {
                        "$ref": "#/components/schemas/Image"
                    }
                },
                "type": "object",
                "xml": {
                    "name": "Image"
                }
            },
            "Merchant": {
                "title": "Merchant",
                "description": "Merchant model",
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "unique_id": {
                        "type": "string"
                    },
                    "name": {
                        "type": "string"
                    },
                    "email": {
                        "type": "string"
                    },
                    "phone": {
                        "type": "string"
                    },
                    "phone_country": {
                        "type": "string"
                    },
                    "shops": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/Shop"
                        }
                    }
                },
                "type": "object",
                "xml": {
                    "name": "Merchant"
                }
            },
            "MerchantAppHtmlPart": {
                "title": "MerchantAppHtmlPart",
                "description": "MerchantAppHtmlPart",
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "unique_id": {
                        "type": "string"
                    },
                    "name": {
                        "type": "string"
                    },
                    "html": {
                        "type": "string"
                    },
                    "is_active": {
                        "type": "boolean"
                    }
                },
                "type": "object",
                "xml": {
                    "name": "MerchantAppHtmlPart"
                }
            },
            "Order": {
                "title": "Order",
                "description": "Order model",
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "unique_id": {
                        "type": "string"
                    },
                    "shop_id": {
                        "type": "integer"
                    },
                    "consumer_id": {
                        "type": "integer"
                    },
                    "full_name": {
                        "type": "string"
                    },
                    "phone": {
                        "type": "string"
                    },
                    "address": {
                        "type": "string"
                    },
                    "note": {
                        "type": "string"
                    },
                    "price": {
                        "type": "number",
                        "format": "float"
                    },
                    "delivery_price": {
                        "type": "number",
                        "format": "float"
                    },
                    "payment_method_price": {
                        "type": "number",
                        "format": "float"
                    },
                    "interest_price": {
                        "type": "number",
                        "format": "float"
                    },
                    "discount_price": {
                        "type": "number",
                        "format": "float"
                    },
                    "total": {
                        "type": "number",
                        "format": "float"
                    },
                    "print_count": {
                        "type": "string"
                    },
                    "email": {
                        "type": "string"
                    },
                    "tc_no": {
                        "type": "integer"
                    },
                    "tax_number": {
                        "type": "string"
                    },
                    "tax_office": {
                        "type": "string"
                    },
                    "company": {
                        "type": "string"
                    },
                    "order_whatsapp_message": {
                        "type": "string"
                    },
                    "url": {
                        "type": "string"
                    },
                    "paymentLink": {
                        "type": "string"
                    },
                    "is_customer_confirmed": {
                        "type": "boolean"
                    },
                    "ip_address": {
                        "type": "string"
                    },
                    "currency": {
                        "$ref": "#/components/schemas/Currency"
                    },
                    "status": {
                        "$ref": "#/components/schemas/OrderStatus"
                    },
                    "paymentStatus": {
                        "$ref": "#/components/schemas/PaymentStatus"
                    },
                    "payment_method": {
                        "$ref": "#/components/schemas/PaymentMethod"
                    },
                    "delivery_type": {
                        "$ref": "#/components/schemas/DeliveryType"
                    },
                    "delivery_point": {
                        "$ref": "#/components/schemas/DeliveryPoint"
                    },
                    "city": {
                        "$ref": "#/components/schemas/City"
                    },
                    "district": {
                        "$ref": "#/components/schemas/District"
                    },
                    "items": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/OrderProduct"
                        }
                    }
                },
                "type": "object",
                "xml": {
                    "name": "Order"
                }
            },
            "OrderProduct": {
                "title": "OrderProduct",
                "description": "OrderProduct",
                "properties": {
                    "order_id": {
                        "type": "integer"
                    },
                    "product_id": {
                        "type": "integer"
                    },
                    "price": {
                        "type": "number",
                        "format": "float"
                    },
                    "total": {
                        "type": "number",
                        "format": "float"
                    },
                    "total_before_discount": {
                        "type": "number",
                        "format": "float"
                    },
                    "discount_total": {
                        "type": "number",
                        "format": "float"
                    },
                    "features": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        }
                    },
                    "features_text": {
                        "type": "string"
                    },
                    "product_name": {
                        "type": "string"
                    },
                    "quantity": {
                        "type": "integer"
                    },
                    "product": {
                        "$ref": "#/components/schemas/Product"
                    }
                },
                "type": "object",
                "xml": {
                    "name": "OrderProduct"
                }
            },
            "OrderStatus": {
                "title": "OrderStatus",
                "description": "OrderStatus",
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "color": {
                        "type": "string"
                    }
                },
                "type": "object",
                "xml": {
                    "name": "OrderStatus"
                }
            },
            "PaginationLinks": {
                "title": "PaginationLinks",
                "description": "Each may contain a related request url",
                "properties": {
                    "first": {
                        "type": "string"
                    },
                    "last": {
                        "type": "string"
                    },
                    "prev": {
                        "type": "string"
                    },
                    "next": {
                        "type": "string"
                    }
                },
                "type": "object",
                "xml": {
                    "name": "PaginationLinks"
                }
            },
            "PaginationMeta": {
                "title": "PaginationMeta",
                "description": "Pagination meta data",
                "properties": {
                    "current_page": {
                        "type": "integer"
                    },
                    "from": {
                        "type": "integer"
                    },
                    "last_page": {
                        "type": "integer"
                    },
                    "path": {
                        "type": "string"
                    },
                    "per_page": {
                        "type": "integer"
                    },
                    "to": {
                        "type": "integer"
                    },
                    "total": {
                        "type": "integer"
                    }
                },
                "type": "object",
                "xml": {
                    "name": "PaginationMeta"
                }
            },
            "PaymentMethod": {
                "title": "PaymentMethod",
                "description": "PaymentMethod",
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    }
                },
                "type": "object",
                "xml": {
                    "name": "PaymentMethod"
                }
            },
            "PaymentStatus": {
                "title": "PaymentStatus",
                "description": "PaymentStatus",
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "color": {
                        "type": "string"
                    }
                },
                "type": "object",
                "xml": {
                    "name": "PaymentStatus"
                }
            },
            "Product": {
                "title": "Product",
                "description": "Product product model",
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "unique_id": {
                        "type": "string"
                    },
                    "remote_id": {
                        "type": "string",
                        "maxLength": 255
                    },
                    "remote_source": {
                        "type": "string",
                        "maxLength": 32
                    },
                    "shop_id": {
                        "type": "integer"
                    },
                    "shop_unique_id": {
                        "type": "string"
                    },
                    "barcode": {
                        "type": "string"
                    },
                    "sku": {
                        "type": "string"
                    },
                    "name": {
                        "type": "string"
                    },
                    "slug": {
                        "type": "string"
                    },
                    "description": {
                        "type": "string"
                    },
                    "meta_title": {
                        "type": "string"
                    },
                    "meta_keywords": {
                        "type": "string"
                    },
                    "meta_description": {
                        "type": "string"
                    },
                    "price": {
                        "type": "number",
                        "format": "float"
                    },
                    "normal_price": {
                        "type": "number",
                        "format": "float"
                    },
                    "discounted_price": {
                        "type": "number",
                        "format": "float"
                    },
                    "tax": {
                        "type": "string"
                    },
                    "is_tax_excluded_in_prices": {
                        "type": "boolean"
                    },
                    "is_installment_disabled": {
                        "type": "boolean"
                    },
                    "stock": {
                        "type": "integer"
                    },
                    "stock_minimum_order": {
                        "type": "integer"
                    },
                    "stock_maximum_order": {
                        "type": "integer"
                    },
                    "stock_alert": {
                        "type": "integer"
                    },
                    "home_page_order": {
                        "type": "integer"
                    },
                    "is_active": {
                        "type": "boolean"
                    },
                    "is_new_product": {
                        "type": "boolean"
                    },
                    "is_home": {
                        "type": "boolean"
                    },
                    "is_delivery_free": {
                        "type": "boolean"
                    },
                    "is_delivery_free_force": {
                        "type": "boolean"
                    },
                    "updated_at": {
                        "type": "string",
                        "format": "date"
                    },
                    "created_at": {
                        "type": "string",
                        "format": "date"
                    },
                    "deleted_at": {
                        "type": "string",
                        "format": "date"
                    },
                    "image": {
                        "$ref": "#/components/schemas/Image"
                    },
                    "images": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/Image"
                        }
                    },
                    "features": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/ProductFeature"
                        }
                    },
                    "parent": {
                        "$ref": "#/components/schemas/Product"
                    },
                    "products": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/Product"
                        }
                    },
                    "variation_options": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/VariationOption"
                        }
                    },
                    "brand": {
                        "$ref": "#/components/schemas/Brand"
                    }
                },
                "type": "object",
                "xml": {
                    "name": "Product"
                }
            },
            "ProductFeature": {
                "title": "ProductFeature",
                "description": "Product feature model",
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "unique_id": {
                        "type": "string"
                    },
                    "product_id": {
                        "type": "integer"
                    },
                    "type": {
                        "type": "string"
                    },
                    "price_effect": {
                        "type": "string"
                    },
                    "name": {
                        "type": "string"
                    },
                    "is_required": {
                        "type": "boolean"
                    },
                    "options": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/ProductFeatureOption"
                        }
                    }
                },
                "type": "object",
                "xml": {
                    "name": "ProductFeature"
                }
            },
            "ProductFeatureOption": {
                "title": "ProductFeatureOption",
                "description": "Product feature option model",
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "unique_id": {
                        "type": "string"
                    },
                    "product_feature_id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "price": {
                        "type": "number",
                        "format": "float"
                    }
                },
                "type": "object",
                "xml": {
                    "name": "ProductFeatureOption"
                }
            },
            "Shop": {
                "title": "Shop",
                "description": "Shop model",
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "unique_id": {
                        "type": "string"
                    },
                    "name": {
                        "type": "string"
                    },
                    "domain": {
                        "type": "string"
                    },
                    "is_online": {
                        "description": "Toggle receiving order mode.",
                        "type": "boolean",
                        "example": true
                    },
                    "is_available_for_order": {
                        "description": "Shows if shop available for order.",
                        "type": "boolean",
                        "example": true
                    },
                    "is_maintenance": {
                        "description": "Toggle maintenance mode.",
                        "type": "boolean",
                        "example": true
                    },
                    "is_gdpr_required": {
                        "description": "Cookie message visibility status.",
                        "type": "boolean",
                        "example": true
                    },
                    "maintenance_message": {
                        "description": "Maintenance message.",
                        "type": "string",
                        "example": "Our shop is closed for a while. Please check later."
                    },
                    "logo": {
                        "$ref": "#/components/schemas/Image"
                    },
                    "tax_rate": {
                        "type": "integer"
                    },
                    "is_tax_excluded_in_prices": {
                        "type": "boolean"
                    }
                },
                "type": "object",
                "xml": {
                    "name": "Shop"
                }
            },
            "ShopArea": {
                "title": "ShopArea",
                "description": "ShopArea",
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "shop_id": {
                        "type": "integer"
                    },
                    "unique_id": {
                        "type": "string"
                    },
                    "area_id": {
                        "type": "integer"
                    },
                    "delivery_price": {
                        "type": "number",
                        "format": "float"
                    },
                    "free_delivery_price": {
                        "type": "number",
                        "format": "float"
                    },
                    "min_order_price": {
                        "type": "number",
                        "format": "float"
                    },
                    "description": {
                        "type": "string"
                    },
                    "area": {
                        "$ref": "#/components/schemas/Area"
                    }
                },
                "type": "object",
                "xml": {
                    "name": "ShopArea"
                }
            },
            "Ticket": {
                "title": "Ticket",
                "description": "Ticket",
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "unique_id": {
                        "type": "string"
                    },
                    "title": {
                        "type": "string"
                    },
                    "department": {
                        "description": "Department type: 1=Sale Support, 2=Customer Support, 3=Product/Service",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "priority": {
                        "type": "integer"
                    },
                    "service_type": {
                        "description": "Service type: 1=Package, 2=License, 3=Instastore, 4=Mobile App, 5=Consulting, 6=Parasut, 7=Bizim Hesap, 8=Logo İşbaşı, 9=Bi Fatura, 10=PayTR, 11=ParamPos, 12=Iyzico, 13=PTT Akıllı Esnaf, 14=Esnek Pos, 15=Geliver Kargo, 16=Basit Kargo, 17=NetGSM, 18=Google Merchants, 19=Facebook Pixel, 20=XML Integration, 21=Kolay QR, 22=Marketplace, 23=Digital Marketplace, 24=Shopier Integration",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3,
                            4,
                            5,
                            6,
                            7,
                            8,
                            9,
                            10,
                            11,
                            12,
                            13,
                            14,
                            15,
                            16,
                            17,
                            18,
                            19,
                            20,
                            21,
                            22,
                            23,
                            24
                        ],
                        "example": 1
                    },
                    "is_active": {
                        "description": "Ticket completely closed or not.",
                        "type": "boolean"
                    },
                    "is_read_by_admin": {
                        "type": "boolean"
                    },
                    "is_read_by_merchant": {
                        "type": "boolean"
                    },
                    "messages": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/TicketMessage"
                        }
                    },
                    "updated_at": {
                        "type": "string",
                        "format": "date"
                    },
                    "created_at": {
                        "type": "string",
                        "format": "date"
                    }
                },
                "type": "object",
                "xml": {
                    "name": "Ticket"
                }
            },
            "TicketMessage": {
                "title": "Ticket Message",
                "description": "Ticket message",
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "unique_id": {
                        "type": "string"
                    },
                    "message": {
                        "type": "string"
                    },
                    "merchant": {
                        "$ref": "#/components/schemas/Merchant"
                    },
                    "created_at": {
                        "type": "string",
                        "format": "date"
                    },
                    "images": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/Image"
                        }
                    }
                },
                "type": "object",
                "xml": {
                    "name": "Ticket Message"
                }
            },
            "ValidationError": {
                "title": "ValidationError",
                "description": "Validation errors. Eech fieldName is a placeholder for request data name. Each contains an array of validation error messages.",
                "properties": {
                    "fieldName": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        }
                    },
                    "fieldName2": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        }
                    },
                    "fieldName3": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        }
                    }
                },
                "type": "object",
                "xml": {
                    "name": "ValidationError"
                }
            },
            "Variation": {
                "title": "Variation",
                "description": "Product variation model",
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "unique_id": {
                        "type": "string"
                    },
                    "name": {
                        "type": "string"
                    },
                    "variation_options": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/VariationOption"
                        }
                    }
                },
                "type": "object",
                "xml": {
                    "name": "Variation"
                }
            },
            "VariationOption": {
                "title": "Variation Option",
                "description": "Product variation option model",
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "variation_id": {
                        "type": "integer"
                    },
                    "unique_id": {
                        "type": "string"
                    },
                    "name": {
                        "type": "string"
                    },
                    "variation": {
                        "$ref": "#/components/schemas/Variation"
                    }
                },
                "type": "object",
                "xml": {
                    "name": "VariationOption"
                }
            },
            "OrderUpdateRequest": {
                "title": "Order update request",
                "description": "Field request body data.",
                "required": [],
                "properties": {
                    "payment_status_id": {
                        "description": "`0 => waiting for payment`, `1 => payment complete`.",
                        "type": "integer",
                        "nullable": false
                    },
                    "order_status_id": {
                        "description": "`1 => created`, `2 => waiting for approval`, `3 => approved`, `4 => preparing`, `5 => sent`, `6 => delivered`, `7 => cancelled`.",
                        "type": "integer",
                        "nullable": false
                    }
                },
                "type": "object"
            },
            "ProductCreateRequest": {
                "title": "Product create request",
                "description": "Field request body data.",
                "required": [
                    "name",
                    "normal_price",
                    "is_active"
                ],
                "properties": {
                    "remote_id": {
                        "type": "string",
                        "default": "",
                        "maxLength": 255,
                        "nullable": true
                    },
                    "remote_source": {
                        "type": "string",
                        "default": "",
                        "maxLength": 32,
                        "nullable": true
                    },
                    "name": {
                        "type": "string"
                    },
                    "description": {
                        "type": "string",
                        "default": "",
                        "nullable": true
                    },
                    "normal_price": {
                        "type": "number",
                        "format": "float"
                    },
                    "discounted_price": {
                        "type": "number",
                        "format": "float",
                        "default": "",
                        "nullable": true
                    },
                    "tax": {
                        "description": "Percentage value between 0-100.",
                        "type": "string",
                        "default": "",
                        "nullable": true
                    },
                    "stock": {
                        "type": "integer",
                        "default": "",
                        "nullable": true
                    },
                    "stock_minimum_order": {
                        "description": "Minimum possible amount to be in cart.",
                        "type": "integer",
                        "default": "",
                        "nullable": true
                    },
                    "stock_maximum_order": {
                        "description": "Maximum possible amount to be in cart.",
                        "type": "integer",
                        "default": "",
                        "nullable": true
                    },
                    "stock_alert": {
                        "description": "Alert the merchant when stock amount goes under this value.",
                        "type": "integer",
                        "default": "",
                        "nullable": true
                    },
                    "category_ids[]": {
                        "type": "array",
                        "items": {
                            "type": "integer"
                        }
                    },
                    "brand_id": {
                        "description": "",
                        "type": "integer",
                        "default": "",
                        "nullable": true
                    },
                    "images[]": {
                        "description": "Deprecated: Use media[] instead. Mime types; jpg, png. Total max 5 MB and 20 items.",
                        "type": "array",
                        "items": {
                            "type": "string",
                            "format": "binary"
                        },
                        "deprecated": true
                    },
                    "images_as_urls[]": {
                        "description": "Deprecated: Use media[] instead. Array of urls.",
                        "type": "array",
                        "items": {
                            "type": "string"
                        },
                        "deprecated": true
                    },
                    "images_as_unique_ids[]": {
                        "description": "Deprecated: Use media[] instead. Array of image unique ids.",
                        "type": "array",
                        "items": {
                            "type": "string"
                        },
                        "deprecated": true
                    },
                    "media[]": {
                        "description": "Unified media field accepting images and videos. Each item can be: (1) Binary file upload (images: jpg, png, gif, webp max 5MB; videos: mp4 max 50MB), (2) URL string pointing to an image/video, (3) unique_id string referencing a temp upload. Max 20 items.",
                        "type": "array",
                        "items": {
                            "type": "string",
                            "format": "binary"
                        }
                    },
                    "barcode": {
                        "description": "Unique barcode.",
                        "type": "string",
                        "default": "",
                        "nullable": true
                    },
                    "sku": {
                        "description": "Unique stock code.",
                        "type": "string",
                        "default": "",
                        "nullable": true
                    },
                    "is_active": {
                        "type": "boolean",
                        "default": true,
                        "nullable": false
                    },
                    "is_installment_disabled": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_home": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_new_product": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_delivery_free": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_delivery_free_force": {
                        "type": "boolean",
                        "default": false
                    },
                    "meta_title": {
                        "type": "string",
                        "default": "",
                        "nullable": true
                    },
                    "meta_keywords": {
                        "type": "string",
                        "default": "",
                        "nullable": true
                    },
                    "meta_description": {
                        "type": "string",
                        "default": "",
                        "nullable": true
                    }
                },
                "type": "object"
            },
            "ProductFeatureCreateRequest": {
                "title": "Product feature create request",
                "description": "Field request body data.",
                "required": [
                    "type",
                    "price_effect",
                    "name"
                ],
                "properties": {
                    "name": {
                        "type": "string"
                    },
                    "type": {
                        "description": "Possible values; `choose_one` or `multiple`",
                        "type": "string"
                    },
                    "price_effect": {
                        "description": "Possible values; `primary_price` or `plus_price`",
                        "type": "string"
                    },
                    "is_required": {
                        "type": "boolean",
                        "default": false
                    }
                },
                "type": "object"
            },
            "ProductFeatureOptionCreateRequest": {
                "title": "Product feature option create request",
                "description": "Field request body data.",
                "required": [
                    "name"
                ],
                "properties": {
                    "name": {
                        "type": "string"
                    },
                    "price": {
                        "description": "Possible values; `choose_one` or `multiple`",
                        "type": "number",
                        "format": "float"
                    }
                },
                "type": "object"
            },
            "ProductFeatureOptionUpdateRequest": {
                "title": "Product feature option update request",
                "description": "Field request body data.",
                "required": [],
                "properties": {
                    "name": {
                        "type": "string"
                    },
                    "price": {
                        "type": "number",
                        "format": "float"
                    }
                },
                "type": "object"
            },
            "ProductFeatureUpdateRequest": {
                "title": "Product feature update request",
                "description": "Field request body data.",
                "required": [],
                "properties": {
                    "name": {
                        "type": "string"
                    },
                    "type": {
                        "description": "Possible values; `choose_one` or `multiple`",
                        "type": "string",
                        "nullable": false
                    },
                    "price_effect": {
                        "description": "Possible values; `primary_price` or `plus_price`",
                        "type": "string",
                        "nullable": false
                    },
                    "is_required": {
                        "type": "boolean",
                        "default": false,
                        "nullable": false
                    }
                },
                "type": "object"
            },
            "ProductSortRequest": {
                "title": "Product sort request",
                "description": "Field request body data.",
                "required": [
                    "product_unique_ids[]"
                ],
                "properties": {
                    "category_unique_id": {
                        "type": "string",
                        "nullable": false
                    },
                    "is_home": {
                        "type": "boolean",
                        "default": false,
                        "nullable": false
                    }
                },
                "type": "object"
            },
            "ProductUpdateRequest": {
                "title": "Product update request",
                "description": "Field request body data.",
                "required": [],
                "properties": {
                    "unique_id": {
                        "type": "string",
                        "default": "",
                        "maxLength": 255,
                        "nullable": true
                    },
                    "remote_id": {
                        "type": "string",
                        "default": "",
                        "maxLength": 255,
                        "nullable": true
                    },
                    "remote_source": {
                        "type": "string",
                        "default": "",
                        "maxLength": 32,
                        "nullable": true
                    },
                    "name": {
                        "type": "string"
                    },
                    "description": {
                        "type": "string",
                        "default": "",
                        "nullable": true
                    },
                    "normal_price": {
                        "type": "number",
                        "format": "float"
                    },
                    "discounted_price": {
                        "type": "number",
                        "format": "float",
                        "default": "",
                        "nullable": true
                    },
                    "tax": {
                        "description": "Percentage value between 0-100.",
                        "type": "string",
                        "default": "",
                        "nullable": true
                    },
                    "stock": {
                        "type": "integer",
                        "default": "",
                        "nullable": true
                    },
                    "stock_minimum_order": {
                        "description": "Minimum possible amount to be in cart.",
                        "type": "integer",
                        "default": "",
                        "nullable": true
                    },
                    "stock_maximum_order": {
                        "description": "Maximum possible amount to be in cart.",
                        "type": "integer",
                        "default": "",
                        "nullable": true
                    },
                    "stock_alert": {
                        "description": "Alert the merchant when stock amount goes under this value.",
                        "type": "integer",
                        "default": "",
                        "nullable": true
                    },
                    "category_ids[]": {
                        "type": "array",
                        "items": {
                            "type": "integer"
                        }
                    },
                    "brand_id": {
                        "description": "",
                        "type": "integer",
                        "default": "",
                        "nullable": true
                    },
                    "images[]": {
                        "description": "Deprecated: Use media[] instead. Mime types; jpg, png. Total max 5 MB and 20 items.",
                        "type": "array",
                        "items": {
                            "type": "string",
                            "format": "binary"
                        },
                        "deprecated": true
                    },
                    "images_as_urls[]": {
                        "description": "Deprecated: Use media[] instead. Array of urls.",
                        "type": "array",
                        "items": {
                            "type": "string"
                        },
                        "deprecated": true
                    },
                    "images_as_unique_ids[]": {
                        "description": "Deprecated: Use media[] instead. Array of image unique ids.",
                        "type": "array",
                        "items": {
                            "type": "string"
                        },
                        "deprecated": true
                    },
                    "media[]": {
                        "description": "Unified media field accepting images and videos. Each item can be: (1) Binary file upload (images: jpg, png, gif, webp max 5MB; videos: mp4 max 50MB), (2) URL string pointing to an image/video, (3) unique_id string referencing a temp upload. Max 20 items.",
                        "type": "array",
                        "items": {
                            "type": "string",
                            "format": "binary"
                        }
                    },
                    "barcode": {
                        "description": "Unique barcode.",
                        "type": "string",
                        "default": "",
                        "nullable": true
                    },
                    "sku": {
                        "description": "Unique stock code.",
                        "type": "string",
                        "default": "",
                        "nullable": true
                    },
                    "is_active": {
                        "type": "boolean",
                        "default": true,
                        "nullable": false
                    },
                    "is_installment_disabled": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_home": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_new_product": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_delivery_free": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_delivery_free_force": {
                        "type": "boolean",
                        "default": false
                    },
                    "meta_title": {
                        "type": "string",
                        "default": "",
                        "nullable": true
                    },
                    "meta_keywords": {
                        "type": "string",
                        "default": "",
                        "nullable": true
                    },
                    "meta_description": {
                        "type": "string",
                        "default": "",
                        "nullable": true
                    },
                    "variation_products": {
                        "description": "<a href=\"https://www.postman.com/winter-rocket-689800/workspace/kolay-sipari/collection/6888437-545b7d3b-7304-49f0-af83-d5d7c4a2b73d?action=share&creator=6888437\" target=\"_blank\">Click to See Example Postman Collection</a>",
                        "type": "array",
                        "items": {
                            "type": "object",
                            "example": "[{}]"
                        },
                        "nullable": true
                    }
                },
                "type": "object"
            },
            "BatchProductUpdateRequest": {
                "title": "Batch Product update request",
                "description": "Field request body data.",
                "required": [],
                "properties": {
                    "batch": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/ProductUpdateRequest"
                        },
                        "maxLength": 10
                    }
                },
                "type": "object"
            },
            "RecordPaymentRequest": {
                "title": "RecordPaymentRequest",
                "description": "Record a payment for consumer credit request body data.",
                "required": [
                    "amount"
                ],
                "properties": {
                    "amount": {
                        "description": "Payment amount. Must be greater than 0.",
                        "type": "number",
                        "minimum": 0.01,
                        "nullable": false
                    },
                    "description": {
                        "description": "Optional description or note for the payment.",
                        "type": "string",
                        "nullable": true
                    }
                },
                "type": "object"
            },
            "ResetPasswordRequest": {
                "title": "Reset password request",
                "description": "Field request body data.",
                "required": [
                    "token",
                    "email",
                    "password",
                    "password_confirmation"
                ],
                "properties": {
                    "token": {
                        "type": "string"
                    },
                    "email": {
                        "type": "string"
                    },
                    "password": {
                        "type": "string",
                        "minLength": 8
                    },
                    "password_confirmation": {
                        "type": "string",
                        "minLength": 8
                    }
                },
                "type": "object"
            },
            "AdditionalServiceResource": {
                "title": "AdditionalServiceResource",
                "description": "Category resource",
                "properties": {
                    "data": {
                        "title": "Data",
                        "description": "Data wrapper",
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/AdditionalService"
                        }
                    }
                },
                "type": "object",
                "xml": {
                    "name": "AdditionalServiceResource"
                }
            },
            "AnnouncementResource": {
                "title": "AnnouncementResource",
                "description": "Announcement resource",
                "properties": {
                    "data": {
                        "title": "Data",
                        "description": "Data wrapper",
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/Announcement"
                        }
                    }
                },
                "type": "object",
                "xml": {
                    "name": "AnnouncementResource"
                }
            },
            "AuthResource": {
                "title": "AuthResource",
                "description": "Auth resource",
                "properties": {
                    "data": {
                        "$ref": "#/components/schemas/Auth"
                    }
                },
                "type": "object",
                "xml": {
                    "name": "AuthResource"
                }
            },
            "BlogCategoryResource": {
                "title": "BlogCategoryResource",
                "description": "Blog category resource",
                "properties": {
                    "data": {
                        "$ref": "#/components/schemas/BlogCategory"
                    }
                },
                "type": "object",
                "xml": {
                    "name": "BlogCategoryResource"
                }
            },
            "BlogPostResource": {
                "title": "BlogPostResource",
                "description": "Blog post resource",
                "properties": {
                    "data": {
                        "$ref": "#/components/schemas/BlogPost"
                    }
                },
                "type": "object",
                "xml": {
                    "name": "BlogPostResource"
                }
            },
            "BrandResource": {
                "title": "BrandResource",
                "description": "Brand resource",
                "properties": {
                    "data": {
                        "title": "Data",
                        "description": "Data wrapper",
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/Brand"
                        }
                    }
                },
                "type": "object",
                "xml": {
                    "name": "BrandResource"
                }
            },
            "CategoryResource": {
                "title": "CategoryResource",
                "description": "Category resource",
                "properties": {
                    "data": {
                        "title": "Data",
                        "description": "Data wrapper",
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/Category"
                        }
                    }
                },
                "type": "object",
                "xml": {
                    "name": "CategoryResource"
                }
            },
            "ConsumerAddressResource": {
                "title": "ConsumerAddressResource",
                "description": "Consumer address resource",
                "properties": {
                    "id": {
                        "description": "Internal ID.",
                        "type": "integer"
                    },
                    "unique_id": {
                        "description": "Unique identifier.",
                        "type": "string"
                    },
                    "name": {
                        "description": "Label or name for the address.",
                        "type": "string"
                    },
                    "address": {
                        "description": "Full address text.",
                        "type": "string"
                    },
                    "country_id": {
                        "description": "Country ID.",
                        "type": "integer",
                        "nullable": true
                    },
                    "city_id": {
                        "description": "City ID.",
                        "type": "integer"
                    },
                    "district_id": {
                        "description": "District ID.",
                        "type": "integer"
                    },
                    "type": {
                        "description": "Address type: `0 => individual`, `1 => corporate`.",
                        "type": "integer",
                        "enum": [
                            0,
                            1
                        ]
                    },
                    "is_primary": {
                        "description": "Whether this is the primary address.",
                        "type": "boolean"
                    },
                    "is_corporate": {
                        "description": "Whether this is a corporate address.",
                        "type": "boolean",
                        "nullable": true
                    },
                    "company_name": {
                        "description": "Company name.",
                        "type": "string",
                        "nullable": true
                    },
                    "tax_number": {
                        "description": "Tax number.",
                        "type": "string",
                        "nullable": true
                    },
                    "tax_office": {
                        "description": "Tax office.",
                        "type": "string",
                        "nullable": true
                    },
                    "city_name": {
                        "description": "City name (when loaded).",
                        "type": "string",
                        "nullable": true
                    },
                    "district_name": {
                        "description": "District name (when loaded).",
                        "type": "string",
                        "nullable": true
                    }
                },
                "type": "object",
                "xml": {
                    "name": "ConsumerAddressResource"
                }
            },
            "ConsumerGroupCategoryDiscountResource": {
                "title": "ConsumerGroupCategoryDiscountResource",
                "description": "Consumer group category discount resource",
                "properties": {
                    "id": {
                        "description": "Internal ID.",
                        "type": "integer"
                    },
                    "consumer_group_id": {
                        "description": "Consumer group ID.",
                        "type": "integer"
                    },
                    "category_id": {
                        "description": "Category ID the discount applies to.",
                        "type": "integer"
                    },
                    "discount_percentage": {
                        "description": "Discount percentage applied to the category.",
                        "type": "number"
                    },
                    "updated_at": {
                        "description": "Record last update timestamp.",
                        "type": "string",
                        "format": "date-time",
                        "nullable": true
                    },
                    "created_at": {
                        "description": "Record creation timestamp.",
                        "type": "string",
                        "format": "date-time",
                        "nullable": true
                    }
                },
                "type": "object",
                "xml": {
                    "name": "ConsumerGroupCategoryDiscountResource"
                }
            },
            "ConsumerGroupResource": {
                "title": "ConsumerGroupResource",
                "description": "Consumer group resource",
                "properties": {
                    "id": {
                        "description": "Internal ID.",
                        "type": "integer"
                    },
                    "unique_id": {
                        "description": "Unique identifier.",
                        "type": "string"
                    },
                    "shop_id": {
                        "description": "Shop ID this group belongs to.",
                        "type": "integer"
                    },
                    "name": {
                        "description": "Name of the consumer group.",
                        "type": "string"
                    },
                    "description": {
                        "description": "Description of the consumer group.",
                        "type": "string",
                        "nullable": true
                    },
                    "email_suffix": {
                        "description": "Email suffix used to auto-assign consumers.",
                        "type": "string",
                        "nullable": true
                    },
                    "price_list_number": {
                        "description": "Price list number assigned to this group.",
                        "type": "integer",
                        "nullable": true
                    },
                    "global_discount_percentage": {
                        "description": "Global discount percentage.",
                        "type": "number",
                        "nullable": true
                    },
                    "min_order_amount": {
                        "description": "Minimum order amount required.",
                        "type": "number",
                        "nullable": true
                    },
                    "min_order_quantity": {
                        "description": "Minimum order quantity required.",
                        "type": "integer",
                        "nullable": true
                    },
                    "payment_term_days": {
                        "description": "Payment term in days.",
                        "type": "integer",
                        "nullable": true
                    },
                    "credit_limit": {
                        "description": "Credit limit for the group.",
                        "type": "number",
                        "nullable": true
                    },
                    "credit_min_order_amount": {
                        "description": "Minimum order amount required to use credit.",
                        "type": "number",
                        "nullable": true
                    },
                    "credit_max_usage_type": {
                        "description": "How the max credit usage is calculated: `percentage` or `fixed`.",
                        "type": "string",
                        "enum": [
                            "percentage",
                            "fixed"
                        ],
                        "nullable": true
                    },
                    "credit_max_usage_value": {
                        "description": "Value for the max credit usage limit.",
                        "type": "number",
                        "nullable": true
                    },
                    "is_active": {
                        "description": "Whether the consumer group is active.",
                        "type": "boolean"
                    },
                    "consumers_count": {
                        "description": "Number of consumers in the group.",
                        "type": "integer",
                        "nullable": true
                    },
                    "updated_at": {
                        "description": "Record last update timestamp.",
                        "type": "string",
                        "format": "date-time",
                        "nullable": true
                    },
                    "created_at": {
                        "description": "Record creation timestamp.",
                        "type": "string",
                        "format": "date-time",
                        "nullable": true
                    },
                    "deleted_at": {
                        "description": "Record deletion timestamp.",
                        "type": "string",
                        "format": "date-time",
                        "nullable": true
                    }
                },
                "type": "object",
                "xml": {
                    "name": "ConsumerGroupResource"
                }
            },
            "ConsumerGroupVisibilityResource": {
                "title": "ConsumerGroupVisibilityResource",
                "description": "Consumer group visibility rule resource",
                "properties": {
                    "id": {
                        "description": "Internal ID.",
                        "type": "integer"
                    },
                    "consumer_group_id": {
                        "description": "Consumer group ID.",
                        "type": "integer"
                    },
                    "visibilityable_id": {
                        "description": "ID of the entity the visibility rule applies to.",
                        "type": "integer"
                    },
                    "visibilityable_type": {
                        "description": "Type of entity the visibility rule applies to.",
                        "type": "string",
                        "enum": [
                            "product",
                            "category"
                        ]
                    },
                    "visibility_type": {
                        "description": "Whether the entity is shown or hidden for this group.",
                        "type": "string",
                        "enum": [
                            "show",
                            "hide"
                        ]
                    },
                    "updated_at": {
                        "description": "Record last update timestamp.",
                        "type": "string",
                        "format": "date-time",
                        "nullable": true
                    },
                    "created_at": {
                        "description": "Record creation timestamp.",
                        "type": "string",
                        "format": "date-time",
                        "nullable": true
                    }
                },
                "type": "object",
                "xml": {
                    "name": "ConsumerGroupVisibilityResource"
                }
            },
            "ConsumerResource": {
                "title": "ConsumerResource",
                "description": "Consumer resource",
                "properties": {
                    "id": {
                        "description": "Internal ID.",
                        "type": "integer"
                    },
                    "unique_id": {
                        "description": "Unique identifier.",
                        "type": "string"
                    },
                    "name": {
                        "description": "Full name of the consumer.",
                        "type": "string"
                    },
                    "email": {
                        "description": "Email address.",
                        "type": "string",
                        "format": "email"
                    },
                    "phone": {
                        "description": "Phone number.",
                        "type": "string"
                    },
                    "tc_no": {
                        "description": "Turkish national ID number.",
                        "type": "string",
                        "nullable": true
                    },
                    "status": {
                        "description": "Account status.",
                        "type": "string",
                        "enum": [
                            "unverified",
                            "verified",
                            "banned"
                        ]
                    },
                    "orders_count": {
                        "description": "Total number of orders placed.",
                        "type": "integer"
                    },
                    "orders_sum_total": {
                        "description": "Sum of all order totals.",
                        "type": "number"
                    },
                    "current_credit_balance": {
                        "description": "Current credit balance.",
                        "type": "number",
                        "nullable": true
                    },
                    "email_verified_at": {
                        "description": "Email verification timestamp.",
                        "type": "string",
                        "format": "date-time",
                        "nullable": true
                    },
                    "created_at": {
                        "description": "Record creation timestamp.",
                        "type": "string",
                        "format": "date-time",
                        "nullable": true
                    },
                    "updated_at": {
                        "description": "Record last update timestamp.",
                        "type": "string",
                        "format": "date-time",
                        "nullable": true
                    }
                },
                "type": "object",
                "xml": {
                    "name": "ConsumerResource"
                }
            },
            "GenericErrorResource": {
                "title": "GenericErrorResource",
                "description": "Most errors follows this structure",
                "properties": {
                    "error": {
                        "title": "Error",
                        "description": "Message",
                        "type": "string"
                    }
                },
                "type": "object",
                "xml": {
                    "name": "GenericErrorResource"
                }
            },
            "HookResource": {
                "title": "HookResource",
                "description": "Hook resource",
                "properties": {
                    "data": {
                        "title": "Data",
                        "description": "Data wrapper",
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/Hook"
                        }
                    }
                },
                "type": "object",
                "xml": {
                    "name": "HookResource"
                }
            },
            "ImageResource": {
                "title": "ImageResource",
                "description": "Category resource",
                "properties": {
                    "data": {
                        "title": "Data",
                        "description": "Data wrapper",
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/Image"
                        }
                    }
                },
                "type": "object",
                "xml": {
                    "name": "ImageResource"
                }
            },
            "MerchantAppHtmlPartResource": {
                "title": "MerchantAppHtmlPartResource",
                "properties": {
                    "data": {
                        "title": "Data",
                        "description": "Data wrapper",
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/MerchantAppHtmlPart"
                        }
                    }
                },
                "type": "object",
                "xml": {
                    "name": "MerchantAppHtmlPartResource"
                }
            },
            "MerchantResource": {
                "title": "MerchantResource",
                "description": "Product resource",
                "properties": {
                    "data": {
                        "title": "Data",
                        "description": "Data wrapper",
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/Merchant"
                        }
                    }
                },
                "type": "object",
                "xml": {
                    "name": "MerchantResource"
                }
            },
            "OrderResource": {
                "title": "OrderResource",
                "description": "Order resource",
                "properties": {
                    "data": {
                        "title": "Data",
                        "description": "Data wrapper",
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/Order"
                        }
                    }
                },
                "type": "object",
                "xml": {
                    "name": "OrderResource"
                }
            },
            "PaginatedAdditionalServiceResource": {
                "title": "PaginatedAdditionalServiceResource",
                "description": "Paginated additional service resource",
                "properties": {
                    "data": {
                        "title": "Data",
                        "description": "Data wrapper",
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/AdditionalService"
                        }
                    },
                    "links": {
                        "$ref": "#/components/schemas/PaginationLinks"
                    },
                    "meta": {
                        "$ref": "#/components/schemas/PaginationMeta"
                    }
                },
                "type": "object",
                "xml": {
                    "name": "PaginatedAdditionalServiceResource"
                }
            },
            "PaginatedAnnouncementResource": {
                "title": "PaginatedAnnouncementResource",
                "description": "Paginated announcemente resource",
                "properties": {
                    "data": {
                        "title": "Data",
                        "description": "Data wrapper",
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/Announcement"
                        }
                    },
                    "links": {
                        "$ref": "#/components/schemas/PaginationLinks"
                    },
                    "meta": {
                        "$ref": "#/components/schemas/PaginationMeta"
                    }
                },
                "type": "object",
                "xml": {
                    "name": "PaginatedAnnouncementResource"
                }
            },
            "PaginatedBlogCategoryResource": {
                "title": "PaginatedBlogCategoryResource",
                "description": "Paginated blog category resource",
                "properties": {
                    "data": {
                        "title": "Data",
                        "description": "Data wrapper",
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/BlogCategory"
                        }
                    },
                    "links": {
                        "$ref": "#/components/schemas/PaginationLinks"
                    },
                    "meta": {
                        "$ref": "#/components/schemas/PaginationMeta"
                    }
                },
                "type": "object",
                "xml": {
                    "name": "PaginatedBlogCategoryResource"
                }
            },
            "PaginatedBlogPostResource": {
                "title": "PaginatedBlogPostResource",
                "description": "Paginated blog post resource",
                "properties": {
                    "data": {
                        "title": "Data",
                        "description": "Data wrapper",
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/BlogPost"
                        }
                    },
                    "links": {
                        "$ref": "#/components/schemas/PaginationLinks"
                    },
                    "meta": {
                        "$ref": "#/components/schemas/PaginationMeta"
                    }
                },
                "type": "object",
                "xml": {
                    "name": "PaginatedBlogPostResource"
                }
            },
            "PaginatedCategoryResource": {
                "title": "PaginatedCategoryResource",
                "description": "Paginated category resource",
                "properties": {
                    "data": {
                        "title": "Data",
                        "description": "Data wrapper",
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/Category"
                        }
                    },
                    "links": {
                        "$ref": "#/components/schemas/PaginationLinks"
                    },
                    "meta": {
                        "$ref": "#/components/schemas/PaginationMeta"
                    }
                },
                "type": "object",
                "xml": {
                    "name": "PaginatedCategoryResource"
                }
            },
            "PaginatedConsumerGroupResource": {
                "title": "PaginatedConsumerGroupResource",
                "description": "Paginated consumer group resource",
                "properties": {
                    "data": {
                        "title": "Data",
                        "description": "Data wrapper",
                        "type": "array",
                        "items": {}
                    },
                    "links": {
                        "$ref": "#/components/schemas/PaginationLinks"
                    },
                    "meta": {
                        "$ref": "#/components/schemas/PaginationMeta"
                    }
                },
                "type": "object",
                "xml": {
                    "name": "PaginatedConsumerGroupResource"
                }
            },
            "PaginatedConsumerResource": {
                "title": "PaginatedConsumerResource",
                "description": "Paginated consumer resource",
                "properties": {
                    "data": {
                        "title": "Data",
                        "description": "Data wrapper",
                        "type": "array",
                        "items": {}
                    },
                    "links": {
                        "$ref": "#/components/schemas/PaginationLinks"
                    },
                    "meta": {
                        "$ref": "#/components/schemas/PaginationMeta"
                    }
                },
                "type": "object",
                "xml": {
                    "name": "PaginatedConsumerResource"
                }
            },
            "PaginatedHookResource": {
                "title": "PaginatedHookResource",
                "description": "Paginated hooks resource",
                "properties": {
                    "data": {
                        "title": "Data",
                        "description": "Data wrapper",
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/Hook"
                        }
                    },
                    "links": {
                        "$ref": "#/components/schemas/PaginationLinks"
                    },
                    "meta": {
                        "$ref": "#/components/schemas/PaginationMeta"
                    }
                },
                "type": "object",
                "xml": {
                    "name": "PaginatedHookResource"
                }
            },
            "PaginatedOrderResource": {
                "title": "PaginatedOrderResource",
                "description": "Paginated order resource",
                "properties": {
                    "data": {
                        "title": "Data",
                        "description": "Data wrapper",
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/Order"
                        }
                    },
                    "links": {
                        "$ref": "#/components/schemas/PaginationLinks"
                    },
                    "meta": {
                        "$ref": "#/components/schemas/PaginationMeta"
                    }
                },
                "type": "object",
                "xml": {
                    "name": "PaginatedOrderResource"
                }
            },
            "PaginatedProductResource": {
                "title": "PaginatedProductResource",
                "description": "Paginated product resource",
                "properties": {
                    "data": {
                        "title": "Data",
                        "description": "Data wrapper",
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/Product"
                        }
                    },
                    "links": {
                        "$ref": "#/components/schemas/PaginationLinks"
                    },
                    "meta": {
                        "$ref": "#/components/schemas/PaginationMeta"
                    }
                },
                "type": "object",
                "xml": {
                    "name": "PaginatedProductResource"
                }
            },
            "PaginatedTicketMessageResource": {
                "title": "PaginatedTicketMessageResource",
                "description": "Paginated ticket message resource",
                "properties": {
                    "data": {
                        "title": "Data",
                        "description": "Data wrapper",
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/TicketMessage"
                        }
                    },
                    "links": {
                        "$ref": "#/components/schemas/PaginationLinks"
                    },
                    "meta": {
                        "$ref": "#/components/schemas/PaginationMeta"
                    }
                },
                "type": "object",
                "xml": {
                    "name": "PaginatedTicketMessageResource"
                }
            },
            "PaginatedTicketResource": {
                "title": "PaginatedTicketResource",
                "description": "Paginated ticket resource",
                "properties": {
                    "data": {
                        "title": "Data",
                        "description": "Data wrapper",
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/Ticket"
                        }
                    },
                    "links": {
                        "$ref": "#/components/schemas/PaginationLinks"
                    },
                    "meta": {
                        "$ref": "#/components/schemas/PaginationMeta"
                    }
                },
                "type": "object",
                "xml": {
                    "name": "PaginatedTicketResource"
                }
            },
            "ProductFeatureOptionResource": {
                "title": "ProductFeatureOptionResource",
                "description": "Product feature option resource",
                "properties": {
                    "data": {
                        "title": "Data",
                        "description": "Data wrapper",
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/ProductFeatureOption"
                        }
                    }
                },
                "type": "object",
                "xml": {
                    "name": "ProductFeatureOptionResource"
                }
            },
            "ProductFeatureResource": {
                "title": "ProductFeatureResource",
                "description": "Product feature resource",
                "properties": {
                    "data": {
                        "title": "Data",
                        "description": "Data wrapper",
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/ProductFeature"
                        }
                    }
                },
                "type": "object",
                "xml": {
                    "name": "ProductFeatureResource"
                }
            },
            "ProductResource": {
                "title": "ProductResource",
                "description": "Product resource",
                "properties": {
                    "data": {
                        "title": "Data",
                        "description": "Data wrapper",
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/Product"
                        }
                    }
                },
                "type": "object",
                "xml": {
                    "name": "ProductResource"
                }
            },
            "ShopResource": {
                "title": "ShopResource",
                "description": "Shop resource",
                "properties": {
                    "data": {
                        "$ref": "#/components/schemas/Shop"
                    }
                },
                "type": "object",
                "xml": {
                    "name": "ShopResource"
                }
            },
            "TicketMessageResource": {
                "title": "TicketMessageResource",
                "description": "Ticket message resource",
                "properties": {
                    "data": {
                        "title": "Data",
                        "description": "Data wrapper",
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/TicketMessage"
                        }
                    }
                },
                "type": "object",
                "xml": {
                    "name": "TicketMessageResource"
                }
            },
            "TicketResource": {
                "title": "TicketResource",
                "description": "Ticket resource",
                "properties": {
                    "data": {
                        "title": "Data",
                        "description": "Data wrapper",
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/Ticket"
                        }
                    }
                },
                "type": "object",
                "xml": {
                    "name": "TicketResource"
                }
            },
            "UnprocessableEntityErrorResource": {
                "title": "UnprocessableEntityErrorResource",
                "description": "Validation error resource for status code 422",
                "properties": {
                    "error": {
                        "title": "Error",
                        "description": "Message",
                        "type": "string"
                    },
                    "data": {
                        "$ref": "#/components/schemas/ValidationError"
                    }
                },
                "type": "object",
                "xml": {
                    "name": "UnprocessableEntityErrorResource"
                }
            },
            "VariationOptionResource": {
                "title": "VariationOptionResource",
                "description": "Product Option resource",
                "properties": {
                    "data": {
                        "title": "Data",
                        "description": "Data wrapper",
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/VariationOption"
                        }
                    }
                },
                "type": "object",
                "xml": {
                    "name": "VariationOptionResource"
                }
            },
            "VariationResource": {
                "title": "VariationResource",
                "description": "Variation resource",
                "properties": {
                    "data": {
                        "title": "Data",
                        "description": "Data wrapper",
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/Variation"
                        }
                    }
                },
                "type": "object",
                "xml": {
                    "name": "VariationResource"
                }
            },
            "SendResetLinkEmailRequest": {
                "title": "Forgot password request",
                "description": "Field request body data.",
                "required": [
                    "email"
                ],
                "properties": {
                    "email": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "ShopRequest": {
                "title": "Shop field update request",
                "description": "Field request body data.",
                "required": [],
                "properties": {
                    "is_online": {
                        "description": "Toggle receiving order mode.",
                        "type": "boolean",
                        "example": true
                    },
                    "is_maintenance": {
                        "description": "Toggle maintenance mode.",
                        "type": "boolean",
                        "example": true
                    },
                    "is_gdpr_required": {
                        "description": "Toggle cookie message status.",
                        "type": "boolean",
                        "example": true
                    },
                    "maintenance_message": {
                        "description": "Maintenance message.",
                        "type": "string",
                        "example": "Our shop is closed for a while. Please check later."
                    }
                },
                "type": "object"
            },
            "StoreAddressRequest": {
                "title": "StoreAddressRequest",
                "description": "Store consumer address request body data.",
                "required": [
                    "name",
                    "address",
                    "city_id",
                    "district_id",
                    "type"
                ],
                "properties": {
                    "name": {
                        "description": "Label or name for the address.",
                        "type": "string",
                        "nullable": false
                    },
                    "address": {
                        "description": "Full address text.",
                        "type": "string",
                        "nullable": false
                    },
                    "city_id": {
                        "description": "City ID.",
                        "type": "integer",
                        "nullable": false
                    },
                    "district_id": {
                        "description": "District ID.",
                        "type": "integer",
                        "nullable": false
                    },
                    "type": {
                        "description": "Address type: `0 => individual`, `1 => corporate`.",
                        "type": "integer",
                        "enum": [
                            0,
                            1
                        ],
                        "nullable": false
                    },
                    "country_id": {
                        "description": "Country ID.",
                        "type": "integer",
                        "nullable": false
                    },
                    "is_corporate": {
                        "description": "Whether the address belongs to a corporation.",
                        "type": "boolean",
                        "nullable": true
                    },
                    "company_name": {
                        "description": "Company name for corporate addresses.",
                        "type": "string",
                        "nullable": true
                    },
                    "tax_number": {
                        "description": "Tax number for corporate addresses.",
                        "type": "string",
                        "nullable": true
                    },
                    "tax_office": {
                        "description": "Tax office for corporate addresses.",
                        "type": "string",
                        "nullable": true
                    }
                },
                "type": "object"
            },
            "SubscribeToFcmNotificationsRequest": {
                "title": "Merchant subscribe to fcm notifications request.",
                "description": "Send FCM device token.",
                "required": [
                    "fcm_device_token"
                ],
                "properties": {
                    "fcm_device_token": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "TicketCreateRequest": {
                "title": "Ticket create request",
                "description": "Field request body data.",
                "required": [
                    "title",
                    "message",
                    "department"
                ],
                "properties": {
                    "title": {
                        "type": "string"
                    },
                    "department": {
                        "description": "`1 => SALE_SUPPORT`, `2 => CUSTOMER_SUPPORT`, `3 => PRODUCT_SERVICE`.",
                        "type": "integer"
                    },
                    "message": {
                        "type": "string"
                    },
                    "images[]": {
                        "description": "Mime types; jpg, png. Total max 5 MB and 20 items.",
                        "type": "array",
                        "items": {
                            "type": "string",
                            "format": "binary"
                        }
                    }
                },
                "type": "object"
            },
            "TicketMessageCreateRequest": {
                "title": "Ticket message create request",
                "description": "Field request body data.",
                "required": [
                    "message"
                ],
                "properties": {
                    "message": {
                        "type": "string"
                    },
                    "images[]": {
                        "description": "Mime types; jpg, png. Total max 5 MB and 20 items.",
                        "type": "array",
                        "items": {
                            "type": "string",
                            "format": "binary"
                        }
                    }
                },
                "type": "object"
            },
            "UnsubscribeFromFcmNotificationsRequest": {
                "title": "Merchant unsubscribe from fcm notifications request.",
                "description": "Send empty request to unsubscribe.",
                "required": [],
                "type": "object"
            },
            "UpdateAddressRequest": {
                "title": "UpdateAddressRequest",
                "description": "Update consumer address request body data.",
                "required": [],
                "properties": {
                    "name": {
                        "description": "Label or name for the address.",
                        "type": "string",
                        "nullable": false
                    },
                    "address": {
                        "description": "Full address text.",
                        "type": "string",
                        "nullable": false
                    },
                    "city_id": {
                        "description": "City ID.",
                        "type": "integer",
                        "nullable": false
                    },
                    "district_id": {
                        "description": "District ID.",
                        "type": "integer",
                        "nullable": false
                    },
                    "type": {
                        "description": "Address type: `0 => individual`, `1 => corporate`.",
                        "type": "integer",
                        "enum": [
                            0,
                            1
                        ],
                        "nullable": false
                    },
                    "country_id": {
                        "description": "Country ID.",
                        "type": "integer",
                        "nullable": false
                    },
                    "is_corporate": {
                        "description": "Whether the address belongs to a corporation.",
                        "type": "boolean",
                        "nullable": true
                    },
                    "company_name": {
                        "description": "Company name for corporate addresses.",
                        "type": "string",
                        "nullable": true
                    },
                    "tax_number": {
                        "description": "Tax number for corporate addresses.",
                        "type": "string",
                        "nullable": true
                    },
                    "tax_office": {
                        "description": "Tax office for corporate addresses.",
                        "type": "string",
                        "nullable": true
                    }
                },
                "type": "object"
            },
            "UpdateConsumerRequest": {
                "title": "UpdateConsumerRequest",
                "description": "Update consumer request body data.",
                "required": [],
                "properties": {
                    "name": {
                        "description": "Full name of the consumer.",
                        "type": "string",
                        "nullable": false
                    },
                    "email": {
                        "description": "Email address of the consumer.",
                        "type": "string",
                        "nullable": false
                    },
                    "phone": {
                        "description": "Phone number of the consumer.",
                        "type": "string",
                        "nullable": false
                    },
                    "tc_no": {
                        "description": "Turkish national ID number.",
                        "type": "string",
                        "nullable": true
                    }
                },
                "type": "object"
            },
            "VariationCreateRequest": {
                "title": "Variation create request",
                "description": "Field request body data.",
                "required": [],
                "properties": {
                    "name": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "VariationOptionCreateRequest": {
                "title": "Variation option create request",
                "description": "Field request body data.",
                "required": [],
                "properties": {
                    "name": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "VariationOptionUpdateRequest": {
                "title": "Variation option update request",
                "description": "Field request body data.",
                "required": [],
                "properties": {
                    "name": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "VariationUpdateRequest": {
                "title": "Variation update request",
                "description": "Field request body data.",
                "required": [],
                "properties": {
                    "name": {
                        "type": "string"
                    }
                },
                "type": "object"
            }
        },
        "securitySchemes": {
            "bearer_token": {
                "type": "apiKey",
                "description": "Enter token in format (Bearer <token>)",
                "name": "Authorization",
                "in": "header"
            }
        }
    },
    "tags": [
        {
            "name": "Merchant Api",
            "description": "API Endpoints of Merchant"
        }
    ]
}