{
  "openapi": "3.0.2",
  "info": {
    "title": "SCX Seller API",
    "version": "1.0",
    "x-logo": {
      "url": "https://scx-sandbox.ui.jtl-software.com/docs/scx.png"
    },
    "description": "SCX Seller API\n"
  },
  "servers": [
    {
      "url": "https://scx-sbx.api.jtl-software.com",
      "description": "Sandbox Environment"
    }
  ],
  "tags": [
    {
      "name": "Account",
      "description": "Seller account management"
    },
    {
      "name": "Offer",
      "description": "Seller offer management"
    },
    {
      "name": "Events",
      "description": "Channel and system events for the seller"
    },
    {
      "name": "Meta",
      "description": "Channel meta information (categories, attributes, rules)"
    },
    {
      "name": "Order",
      "description": "Order processing, payments, shipping, cancellations and refunds"
    },
    {
      "name": "Report",
      "description": "Seller report generation and retrieval"
    },
    {
      "name": "Ticket",
      "description": "Channel ticket management"
    }
  ],
  "paths": {
    "/v1/seller": {
      "get": {
        "operationId": "GetSellerList",
        "tags": [
          "Account"
        ],
        "summary": "Seller",
        "description": "List all created Seller",
        "security": [
          {
            "SellerAuth": []
          }
        ],
        "responses": {
          "200": {
            "$ref": "#/components/responses/SellerAccountList"
          },
          "401": {
            "$ref": "#/components/responses/AccessForbidden"
          },
          "429": {
            "$ref": "#/components/responses/RequestThrottled"
          },
          "500": {
            "$ref": "#/components/responses/ServerError"
          }
        }
      }
    },
    "/v1/seller/login": {
      "post": {
        "operationId": "SellerLogin",
        "tags": [
          "Account"
        ],
        "security": [
          {
            "JTLoAuth": []
          }
        ],
        "summary": "Login SCX Account\n",
        "description": "Login SCX Account by creating a new refesh Token.\n",
        "responses": {
          "200": {
            "description": "Refresh token created",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "token": {
                      "type": "string",
                      "example": "SELLER.sfhgduwgfwre436fgsudfgwu4zgdsiflsdagvsaifga48ogc"
                    }
                  }
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/BadRequest"
          },
          "401": {
            "$ref": "#/components/responses/AccessForbidden"
          },
          "404": {
            "$ref": "#/components/responses/ResourceNotFound"
          },
          "429": {
            "$ref": "#/components/responses/RequestThrottled"
          },
          "500": {
            "$ref": "#/components/responses/ServerError"
          }
        }
      }
    },
    "/v1/seller/channel/{Channel}": {
      "post": {
        "operationId": "CreateSignUpSessionForChannel",
        "tags": [
          "Account"
        ],
        "summary": "Create Seller",
        "description": "Create a seller signup session for a specific channel.\nThe Useragent is required and will be validated against the channel's\nminimum Clients Version requirement (minimumClientsVersionRequired).\n",
        "security": [
          {
            "SellerAuth": []
          }
        ],
        "parameters": [
          {
            "in": "path",
            "name": "Channel",
            "description": "Channel identifier the seller wants to sign up for (e.g. `MBDCOM`).",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/Channel"
            }
          },
          {
            "in": "header",
            "name": "User-Agent",
            "required": true,
            "description": "Wawi Useragent containing the Wawi version information.\nMust meet the channel's minWawiVersionRequired if specified.\n",
            "schema": {
              "type": "string",
              "example": "Wawi/1.11.0.3"
            }
          }
        ],
        "responses": {
          "200": {
            "$ref": "#/components/responses/SellerAccountSignupSession"
          },
          "400": {
            "$ref": "#/components/responses/BadRequest"
          },
          "401": {
            "$ref": "#/components/responses/AccessForbidden"
          },
          "429": {
            "$ref": "#/components/responses/RequestThrottled"
          },
          "500": {
            "$ref": "#/components/responses/ServerError"
          }
        }
      },
      "patch": {
        "operationId": "CreateUpdateSellerSessionForChannel",
        "tags": [
          "Account"
        ],
        "summary": "Update Seller",
        "security": [
          {
            "SellerAuth": []
          }
        ],
        "parameters": [
          {
            "in": "path",
            "name": "Channel",
            "description": "Channel identifier the seller-account update session is started for.",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/Channel"
            }
          },
          {
            "in": "query",
            "name": "sellerId",
            "description": "ID of the seller account whose channel link should be updated.",
            "schema": {
              "$ref": "#/components/schemas/SellerId"
            }
          }
        ],
        "responses": {
          "200": {
            "$ref": "#/components/responses/SellerAccountUpdateSession"
          },
          "401": {
            "$ref": "#/components/responses/AccessForbidden"
          },
          "429": {
            "$ref": "#/components/responses/RequestThrottled"
          },
          "500": {
            "$ref": "#/components/responses/ServerError"
          }
        }
      }
    },
    "/v1/seller/channel/{channel}/{sellerId}": {
      "delete": {
        "operationId": "UnlinkSellerFromChannel",
        "tags": [
          "Account"
        ],
        "security": [
          {
            "SellerAuth": []
          }
        ],
        "summary": "Unlink Seller from Channel",
        "parameters": [
          {
            "in": "path",
            "required": true,
            "name": "channel",
            "description": "Channel name the seller account should be unlinked from.",
            "schema": {
              "$ref": "#/components/schemas/Channel"
            }
          },
          {
            "in": "path",
            "required": true,
            "name": "sellerId",
            "description": "ID of the seller account to unlink from the channel.",
            "schema": {
              "$ref": "#/components/schemas/SellerId"
            }
          }
        ],
        "responses": {
          "202": {
            "description": "Seller successfully unlinked"
          }
        }
      }
    },
    "/v1/seller/offer": {
      "post": {
        "operationId": "CreateOffers",
        "tags": [
          "Offer"
        ],
        "summary": "Create Offer\n",
        "security": [
          {
            "SellerAuth": []
          }
        ],
        "requestBody": {
          "$ref": "#/components/requestBodies/OfferListRequest"
        },
        "responses": {
          "201": {
            "$ref": "#/components/responses/Created"
          },
          "400": {
            "$ref": "#/components/responses/BadRequest"
          },
          "401": {
            "$ref": "#/components/responses/AccessForbidden"
          },
          "429": {
            "$ref": "#/components/responses/RequestThrottled"
          },
          "500": {
            "$ref": "#/components/responses/ServerError"
          }
        }
      },
      "put": {
        "operationId": "UpdateOffers",
        "tags": [
          "Offer"
        ],
        "summary": "Update Offer\n",
        "description": "Update an existing Offer",
        "security": [
          {
            "SellerAuth": []
          }
        ],
        "requestBody": {
          "$ref": "#/components/requestBodies/OfferListRequest"
        },
        "responses": {
          "201": {
            "$ref": "#/components/responses/Created"
          },
          "400": {
            "$ref": "#/components/responses/BadRequest"
          },
          "401": {
            "$ref": "#/components/responses/AccessForbidden"
          },
          "429": {
            "$ref": "#/components/responses/RequestThrottled"
          },
          "500": {
            "$ref": "#/components/responses/ServerError"
          }
        }
      }
    },
    "/v1/seller/offer/picture": {
      "post": {
        "deprecated": true,
        "operationId": "UploadOfferPicture",
        "tags": [
          "Offer"
        ],
        "summary": "Upload Picture",
        "description": "(This API is deprecated by `POST /v1/seller/offer/file`)\nSupported picture formats are: GIF JPEG PNG SVG\n",
        "security": [
          {
            "SellerAuth": []
          }
        ],
        "requestBody": {
          "$ref": "#/components/requestBodies/ProductPictureRequest"
        },
        "responses": {
          "200": {
            "$ref": "#/components/responses/PictureUpload"
          },
          "400": {
            "$ref": "#/components/responses/BadRequest"
          },
          "401": {
            "$ref": "#/components/responses/AccessForbidden"
          },
          "429": {
            "$ref": "#/components/responses/RequestThrottled"
          },
          "500": {
            "$ref": "#/components/responses/ServerError"
          }
        }
      }
    },
    "/v1/seller/offer/file": {
      "post": {
        "operationId": "UploadOfferFiles",
        "tags": [
          "Offer"
        ],
        "summary": "Upload Files",
        "description": "Supported image formats are: GIF, JPEG, PNG, SVG\nSupported document formats are: PDF, Plain text\n",
        "security": [
          {
            "SellerAuth": []
          }
        ],
        "requestBody": {
          "$ref": "#/components/requestBodies/FileUploadRequest"
        },
        "responses": {
          "200": {
            "$ref": "#/components/responses/FileUpload"
          },
          "400": {
            "$ref": "#/components/responses/BadRequest"
          },
          "401": {
            "$ref": "#/components/responses/AccessForbidden"
          },
          "429": {
            "$ref": "#/components/responses/RequestThrottled"
          },
          "500": {
            "$ref": "#/components/responses/ServerError"
          }
        },
        "x-codeSamples": [
          {
            "lang": "PHP",
            "source": "echo \"FOO\";"
          }
        ]
      }
    },
    "/v2/seller/event": {
      "get": {
        "operationId": "GetSellerEventList",
        "tags": [
          "Events"
        ],
        "summary": "Channel Events\n",
        "description": "Retrieve ChannelEvents from all subscriped Channels. Channel Events are various different actions which occure\non the channel side.\n\n**Such as**\n\n* New Orders\n* Order status changes\n* Order Address changes\n* Changes in listing process\n\nThese API route will deliver a list of unacknolaged events in a FIFO order. Each event is delivered At-Least-Once.\nThere is no garantee about uniquness. You may see Events with an identical payload multiply time.\n\nAfter retrieving a list of Events by `GET /v2/seller/event` you have to acknowlage these Events using the `id`\nproperty of each single event with `DELETE /v2/seller/event`. Unacknolaged events are getting invisible for 5\nminutes. After these time a unacknowlaged event is getting visible again.\n",
        "security": [
          {
            "SellerAuth": []
          }
        ],
        "parameters": [
          {
            "in": "query",
            "description": "List all Events chreated after a specified time. If no `createdAfter` parameter all unacknolaged events\nare returned.\n",
            "name": "createdAfter",
            "schema": {
              "type": "string",
              "format": "date-time"
            },
            "example": "2019-07-01T00:54:22+00:00",
            "required": false
          },
          {
            "in": "query",
            "name": "eventTypeFilter",
            "description": "Will only return results matching events given in eventTypeFilter Parameter. Use a comma separated list to\nfilter for multiply events.\n",
            "example": "ChannelEventTestSystemEventNotification",
            "required": false,
            "schema": {
              "type": "string"
            }
          },
          {
            "in": "query",
            "name": "channel",
            "description": "Will only return results matching given channel.\n",
            "example": "MBDCOM",
            "required": false,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "$ref": "#/components/responses/EventList"
          },
          "401": {
            "$ref": "#/components/responses/AccessForbidden"
          },
          "429": {
            "$ref": "#/components/responses/RequestThrottled"
          },
          "500": {
            "$ref": "#/components/responses/ServerError"
          }
        }
      }
    },
    "/v1/seller/event": {
      "delete": {
        "operationId": "AcknowledgeSellerEvents",
        "tags": [
          "Events"
        ],
        "security": [
          {
            "SellerAuth": []
          }
        ],
        "summary": "Acknowledge Events",
        "description": "Delete Events by eventId. If a event is deleted it will not redelivered with the next GET /channel/event call",
        "requestBody": {
          "$ref": "#/components/requestBodies/AcknowledgeEventIdListRequest"
        },
        "responses": {
          "204": {
            "$ref": "#/components/responses/NoContent"
          },
          "400": {
            "$ref": "#/components/responses/BadRequest"
          },
          "401": {
            "$ref": "#/components/responses/AccessForbidden"
          },
          "429": {
            "$ref": "#/components/responses/RequestThrottled"
          },
          "500": {
            "$ref": "#/components/responses/ServerError"
          }
        }
      }
    },
    "/v1/seller/offer/stock": {
      "put": {
        "operationId": "UpdateStock",
        "tags": [
          "Offer"
        ],
        "summary": "Update Stock\n",
        "description": "Lightweight request which update stock amount only for already listed offers. If a offer is not yet listed\nthe requests will be ignored.\n",
        "security": [
          {
            "SellerAuth": []
          }
        ],
        "requestBody": {
          "$ref": "#/components/requestBodies/OfferStockChangeRequest"
        },
        "responses": {
          "201": {
            "$ref": "#/components/responses/Created"
          },
          "400": {
            "$ref": "#/components/responses/BadRequest"
          },
          "401": {
            "$ref": "#/components/responses/AccessForbidden"
          },
          "429": {
            "$ref": "#/components/responses/RequestThrottled"
          },
          "500": {
            "$ref": "#/components/responses/ServerError"
          }
        }
      }
    },
    "/v1/seller/offer/price": {
      "put": {
        "operationId": "UpdatePrice",
        "tags": [
          "Offer"
        ],
        "summary": "Update Price",
        "description": "Lightweight request which update price informationonly for already listed offers. If a offer is not\nyet listed on any Channel data will be be ignored.\n",
        "security": [
          {
            "SellerAuth": []
          }
        ],
        "requestBody": {
          "$ref": "#/components/requestBodies/OfferPriceChangeRequest"
        },
        "responses": {
          "201": {
            "$ref": "#/components/responses/Created"
          },
          "400": {
            "$ref": "#/components/responses/BadRequest"
          },
          "401": {
            "$ref": "#/components/responses/AccessForbidden"
          },
          "429": {
            "$ref": "#/components/responses/RequestThrottled"
          },
          "500": {
            "$ref": "#/components/responses/ServerError"
          }
        }
      }
    },
    "/v1/seller/offer/end": {
      "delete": {
        "operationId": "EndOffers",
        "tags": [
          "Offer"
        ],
        "summary": "End Offer\n",
        "security": [
          {
            "SellerAuth": []
          }
        ],
        "requestBody": {
          "$ref": "#/components/requestBodies/OfferEndRequest"
        },
        "responses": {
          "201": {
            "$ref": "#/components/responses/OptionalErrorResponse"
          },
          "400": {
            "$ref": "#/components/responses/BadRequest"
          },
          "401": {
            "$ref": "#/components/responses/AccessForbidden"
          },
          "429": {
            "$ref": "#/components/responses/RequestThrottled"
          },
          "500": {
            "$ref": "#/components/responses/ServerError"
          }
        }
      }
    },
    "/v1/seller/meta/{channel}/payment-rules": {
      "get": {
        "operationId": "GetChannelPaymentRules",
        "tags": [
          "Meta"
        ],
        "security": [
          {
            "SellerAuth": []
          }
        ],
        "summary": "Channel Payment",
        "description": "List all payment rules defined by channel\n",
        "parameters": [
          {
            "in": "path",
            "required": true,
            "name": "channel",
            "description": "Channel identifier the payment rules are requested for (e.g. `MBDCOM`)",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "$ref": "#/components/responses/ChannelPaymentRulesMeta"
          },
          "401": {
            "$ref": "#/components/responses/AccessForbidden"
          },
          "429": {
            "$ref": "#/components/responses/RequestThrottled"
          },
          "500": {
            "$ref": "#/components/responses/ServerError"
          }
        }
      }
    },
    "/v1/seller/meta/{channel}/shipping-rules": {
      "get": {
        "operationId": "GetChannelShippingRules",
        "tags": [
          "Meta"
        ],
        "security": [
          {
            "SellerAuth": []
          }
        ],
        "summary": "Channel Shipping",
        "description": "List all shipping rules defined by carrier\n",
        "parameters": [
          {
            "in": "path",
            "required": true,
            "name": "channel",
            "description": "Channel identifier the shipping rules are requested for (e.g. `MBDCOM`)",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "$ref": "#/components/responses/ChannelShippingRuleMeta"
          },
          "401": {
            "$ref": "#/components/responses/AccessForbidden"
          },
          "429": {
            "$ref": "#/components/responses/RequestThrottled"
          },
          "500": {
            "$ref": "#/components/responses/ServerError"
          }
        }
      }
    },
    "/v1/seller/meta/{channel}/categories": {
      "get": {
        "operationId": "GetChannelCategories",
        "tags": [
          "Meta"
        ],
        "summary": "Category Tree\n",
        "description": "Returns JSON by default. Response can be gzipped if Accept header is set to \"application/gzip\".",
        "security": [
          {
            "SellerAuth": []
          }
        ],
        "parameters": [
          {
            "in": "path",
            "required": true,
            "name": "channel",
            "description": "Channel name whose category tree should be returned.",
            "schema": {
              "type": "string"
            }
          },
          {
            "in": "header",
            "name": "Accept",
            "description": "Preferred response encoding. Use `application/gzip` to receive the response gzip-compressed.",
            "schema": {
              "type": "string",
              "enum": [
                "application/json",
                "application/gzip"
              ],
              "default": "application/json"
            }
          }
        ],
        "responses": {
          "200": {
            "$ref": "#/components/responses/ChannelCategory"
          },
          "401": {
            "$ref": "#/components/responses/AccessForbidden"
          },
          "429": {
            "$ref": "#/components/responses/RequestThrottled"
          },
          "500": {
            "$ref": "#/components/responses/ServerError"
          }
        }
      }
    },
    "/v1/seller/meta/{channel}/category/{categoryId}/attributes": {
      "get": {
        "operationId": "GetChannelCategoryAttributes",
        "tags": [
          "Meta"
        ],
        "summary": "Category Attributes\n",
        "security": [
          {
            "SellerAuth": []
          }
        ],
        "parameters": [
          {
            "in": "path",
            "required": true,
            "name": "channel",
            "description": "Channel name whose category attribute set should be returned.",
            "schema": {
              "type": "string"
            }
          },
          {
            "in": "path",
            "required": true,
            "name": "categoryId",
            "description": "ID of the category whose attribute requirements should be returned.",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "$ref": "#/components/responses/CategoryAttributes"
          },
          "401": {
            "$ref": "#/components/responses/AccessForbidden"
          },
          "429": {
            "$ref": "#/components/responses/RequestThrottled"
          },
          "500": {
            "$ref": "#/components/responses/ServerError"
          }
        }
      }
    },
    "/v1/seller/meta/{channel}/attributes": {
      "get": {
        "operationId": "GetChannelAttributes",
        "tags": [
          "Meta"
        ],
        "summary": "Channel Attributes\n",
        "security": [
          {
            "SellerAuth": []
          }
        ],
        "parameters": [
          {
            "in": "path",
            "required": true,
            "name": "channel",
            "description": "Channel name (e.g. `kaufland`, `otto`) whose attribute set should be returned.",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "$ref": "#/components/responses/ChannelAttributes"
          },
          "401": {
            "$ref": "#/components/responses/AccessForbidden"
          },
          "429": {
            "$ref": "#/components/responses/RequestThrottled"
          },
          "500": {
            "$ref": "#/components/responses/ServerError"
          }
        }
      }
    },
    "/v1/seller/meta/{channel}/seller/attributes": {
      "get": {
        "operationId": "GetSellerAttributes",
        "tags": [
          "Meta"
        ],
        "summary": "Channel Seller Attributes\n",
        "security": [
          {
            "SellerAuth": []
          }
        ],
        "parameters": [
          {
            "in": "path",
            "required": true,
            "name": "channel",
            "description": "Channel name whose seller-specific attribute set should be returned.",
            "schema": {
              "$ref": "#/components/schemas/Channel"
            }
          }
        ],
        "responses": {
          "200": {
            "$ref": "#/components/responses/SellerAttributes"
          },
          "401": {
            "$ref": "#/components/responses/AccessForbidden"
          },
          "429": {
            "$ref": "#/components/responses/RequestThrottled"
          },
          "500": {
            "$ref": "#/components/responses/ServerError"
          }
        }
      },
      "post": {
        "operationId": "RequestSellerAttributeUpdate",
        "tags": [
          "Meta"
        ],
        "summary": "Request Seller Attributes update\n",
        "description": "SCX will ask the Channel for a Seller Attribute update for all Sellers connected with this Chanel. Once the\nupdate is prossed by Channel the Seller will receive a one Channel Event \"Channel:MetaDataChanged\" with\ntype=SELLER_ATTRIBUTES for each connected Seller.\n",
        "security": [
          {
            "SellerAuth": []
          }
        ],
        "parameters": [
          {
            "in": "path",
            "required": true,
            "name": "channel",
            "description": "Channel name for which the seller-attribute update should be requested.",
            "schema": {
              "$ref": "#/components/schemas/Channel"
            }
          }
        ],
        "responses": {
          "202": {
            "description": "Seller update request accepted"
          },
          "401": {
            "$ref": "#/components/responses/AccessForbidden"
          },
          "429": {
            "$ref": "#/components/responses/RequestThrottled"
          },
          "500": {
            "$ref": "#/components/responses/ServerError"
          }
        }
      }
    },
    "/v1/seller/meta/category-tree-version": {
      "get": {
        "operationId": "GetChannelCategoryTreeVersion",
        "tags": [
          "Meta"
        ],
        "summary": "Category Tree Version List\n",
        "security": [
          {
            "SellerAuth": []
          }
        ],
        "description": "Deliver all category tree versions for Cannels where the currenty account has at least one active seller subscription\n",
        "responses": {
          "200": {
            "$ref": "#/components/responses/CategoryTreeVersionList"
          },
          "401": {
            "$ref": "#/components/responses/AccessForbidden"
          },
          "429": {
            "$ref": "#/components/responses/RequestThrottled"
          },
          "500": {
            "$ref": "#/components/responses/ServerError"
          }
        }
      }
    },
    "/v1/seller/meta/{channel}/price-types": {
      "get": {
        "operationId": "GetChannelPriceTypes",
        "tags": [
          "Meta"
        ],
        "summary": "Channel Price Types\n",
        "security": [
          {
            "SellerAuth": []
          }
        ],
        "parameters": [
          {
            "in": "path",
            "required": true,
            "name": "channel",
            "description": "Channel name whose supported price types should be returned.",
            "schema": {
              "type": "string"
            }
          }
        ],
        "description": "Provide channel supported price types\n",
        "responses": {
          "200": {
            "$ref": "#/components/responses/SupportedPricesTypes"
          },
          "401": {
            "$ref": "#/components/responses/AccessForbidden"
          },
          "429": {
            "$ref": "#/components/responses/RequestThrottled"
          },
          "500": {
            "$ref": "#/components/responses/ServerError"
          }
        }
      }
    },
    "/v1/seller/order/shipping": {
      "put": {
        "operationId": "CreateShippingForOrders",
        "tags": [
          "Order"
        ],
        "summary": "Shipping\n",
        "security": [
          {
            "SellerAuth": []
          }
        ],
        "description": "Send shipping information for shipped orders\n",
        "requestBody": {
          "$ref": "#/components/requestBodies/OrderShippingRequest"
        },
        "responses": {
          "201": {
            "$ref": "#/components/responses/Created"
          },
          "400": {
            "$ref": "#/components/responses/BadRequest"
          },
          "401": {
            "$ref": "#/components/responses/AccessForbidden"
          },
          "429": {
            "$ref": "#/components/responses/RequestThrottled"
          },
          "500": {
            "$ref": "#/components/responses/ServerError"
          }
        }
      }
    },
    "/v1/seller/order/payment": {
      "put": {
        "operationId": "CreatePaymentForOrders",
        "tags": [
          "Order"
        ],
        "summary": "Set Payment\n",
        "security": [
          {
            "SellerAuth": []
          }
        ],
        "description": "Set payment information for orders.\n",
        "requestBody": {
          "$ref": "#/components/requestBodies/OrderPaymentRequest"
        },
        "responses": {
          "201": {
            "$ref": "#/components/responses/Created"
          },
          "400": {
            "$ref": "#/components/responses/BadRequest"
          },
          "401": {
            "$ref": "#/components/responses/AccessForbidden"
          },
          "429": {
            "$ref": "#/components/responses/RequestThrottled"
          },
          "500": {
            "$ref": "#/components/responses/ServerError"
          }
        }
      }
    },
    "/v1/seller/order/cancellation": {
      "post": {
        "operationId": "RequestOrderCancellation",
        "tags": [
          "Order"
        ],
        "summary": "Request Order Cancellation",
        "security": [
          {
            "SellerAuth": []
          }
        ],
        "description": "Request cancallation for a Order or OrderItem\n",
        "requestBody": {
          "$ref": "#/components/requestBodies/OrderCancellationRequestRequest"
        },
        "responses": {
          "201": {
            "description": "Order Cancellation received."
          },
          "400": {
            "$ref": "#/components/responses/BadRequest"
          },
          "401": {
            "$ref": "#/components/responses/AccessForbidden"
          },
          "429": {
            "$ref": "#/components/responses/RequestThrottled"
          },
          "500": {
            "$ref": "#/components/responses/ServerError"
          }
        }
      }
    },
    "/v1/channel/order/cancellation-accept": {
      "put": {
        "operationId": "OrderCancellationRequestAccept",
        "tags": [
          "Order"
        ],
        "summary": "Accept Cancellation Request",
        "security": [
          {
            "SellerAuth": []
          }
        ],
        "description": "Accept a cancellation Request for a Order or OrderItem",
        "requestBody": {
          "$ref": "#/components/requestBodies/OrderCancellationAcceptRequest"
        },
        "responses": {
          "201": {
            "description": "Order Cancellation accepted"
          },
          "401": {
            "$ref": "#/components/responses/AccessForbidden"
          },
          "404": {
            "$ref": "#/components/responses/ResourceNotFound"
          },
          "429": {
            "$ref": "#/components/responses/RequestThrottled"
          },
          "500": {
            "$ref": "#/components/responses/ServerError"
          }
        }
      }
    },
    "/v1/channel/order/cancellation-denied": {
      "put": {
        "operationId": "OrderCancellationRequestDenied",
        "tags": [
          "Order"
        ],
        "summary": "Deny Cancellation Request",
        "security": [
          {
            "SellerAuth": []
          }
        ],
        "description": "Deny a cancellation Request for a Order or OrderItem",
        "requestBody": {
          "$ref": "#/components/requestBodies/OrderCancellationDeniedRequest"
        },
        "responses": {
          "201": {
            "description": "Order Cancellation denied"
          },
          "401": {
            "$ref": "#/components/responses/AccessForbidden"
          },
          "404": {
            "$ref": "#/components/responses/ResourceNotFound"
          },
          "429": {
            "$ref": "#/components/responses/RequestThrottled"
          },
          "500": {
            "$ref": "#/components/responses/ServerError"
          }
        }
      }
    },
    "/v1/seller/order/accept": {
      "put": {
        "operationId": "ConfirmOrders",
        "tags": [
          "Order"
        ],
        "summary": "Order Confirm\n",
        "security": [
          {
            "SellerAuth": []
          }
        ],
        "description": "Accept Order with Stauts `UNACKED`.\n",
        "requestBody": {
          "$ref": "#/components/requestBodies/OrderAccept"
        },
        "responses": {
          "201": {
            "$ref": "#/components/responses/Created"
          },
          "400": {
            "$ref": "#/components/responses/BadRequest"
          },
          "401": {
            "$ref": "#/components/responses/AccessForbidden"
          },
          "429": {
            "$ref": "#/components/responses/RequestThrottled"
          },
          "500": {
            "$ref": "#/components/responses/ServerError"
          }
        }
      }
    },
    "/v1/seller/order/invoice": {
      "post": {
        "operationId": "UploadInvoice",
        "tags": [
          "Order"
        ],
        "summary": "Upload Invoice",
        "security": [
          {
            "SellerAuth": []
          }
        ],
        "description": "Upload an invoice document for a previously created order. The returned `documentId` can later be used with `GetInvoiceDocument`.",
        "requestBody": {
          "$ref": "#/components/requestBodies/Invoice"
        },
        "responses": {
          "201": {
            "description": "Invoice received"
          },
          "401": {
            "$ref": "#/components/responses/AccessForbidden"
          },
          "404": {
            "$ref": "#/components/responses/ResourceNotFound"
          },
          "429": {
            "$ref": "#/components/responses/RequestThrottled"
          },
          "500": {
            "$ref": "#/components/responses/ServerError"
          }
        }
      }
    },
    "/v1/seller/order/invoice/{documentId}": {
      "get": {
        "operationId": "GetInvoiceDocument",
        "tags": [
          "Order"
        ],
        "summary": "Invoice",
        "security": [
          {
            "SellerAuth": []
          }
        ],
        "description": "Download Invoice document\n",
        "parameters": [
          {
            "in": "path",
            "required": true,
            "name": "documentId",
            "description": "Identifier of the invoice document returned by `UploadInvoice`",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "$ref": "#/components/responses/Invoice"
          },
          "400": {
            "$ref": "#/components/responses/BadRequest"
          },
          "401": {
            "$ref": "#/components/responses/AccessForbidden"
          },
          "429": {
            "$ref": "#/components/responses/RequestThrottled"
          },
          "500": {
            "$ref": "#/components/responses/ServerError"
          }
        }
      }
    },
    "/v1/seller/order/return": {
      "post": {
        "operationId": "CreateReturnReceived",
        "tags": [
          "Order"
        ],
        "summary": "Return",
        "security": [
          {
            "SellerAuth": []
          }
        ],
        "description": "Send information about a received return.",
        "requestBody": {
          "$ref": "#/components/requestBodies/ReturnReceived"
        },
        "responses": {
          "201": {
            "description": "Return information received"
          },
          "401": {
            "$ref": "#/components/responses/AccessForbidden"
          },
          "404": {
            "$ref": "#/components/responses/ResourceNotFound"
          },
          "429": {
            "$ref": "#/components/responses/RequestThrottled"
          },
          "500": {
            "$ref": "#/components/responses/ServerError"
          }
        }
      }
    },
    "/v1/seller/order/refund": {
      "post": {
        "operationId": "SendRefund",
        "tags": [
          "Order"
        ],
        "summary": "Send Refund",
        "security": [
          {
            "SellerAuth": []
          }
        ],
        "description": "Send a refund for a list of Order Items to Channel\n",
        "requestBody": {
          "$ref": "#/components/requestBodies/SendRefund"
        },
        "responses": {
          "201": {
            "description": "Refund send to Channel"
          },
          "400": {
            "$ref": "#/components/responses/BadRequest"
          },
          "401": {
            "$ref": "#/components/responses/AccessForbidden"
          },
          "429": {
            "$ref": "#/components/responses/RequestThrottled"
          },
          "500": {
            "$ref": "#/components/responses/ServerError"
          }
        }
      }
    },
    "/v1/seller/report/request": {
      "post": {
        "operationId": "RequestReport",
        "tags": [
          "Report"
        ],
        "summary": "Request Report\n",
        "security": [
          {
            "SellerAuth": []
          }
        ],
        "description": "Request a new report from channel. \nReports a valid for 48 hours after request indicated by expiresIn.\n",
        "requestBody": {
          "$ref": "#/components/requestBodies/RequestReport"
        },
        "responses": {
          "200": {
            "$ref": "#/components/responses/ReportRequested"
          },
          "400": {
            "$ref": "#/components/responses/BadRequest"
          },
          "401": {
            "$ref": "#/components/responses/AccessForbidden"
          },
          "429": {
            "$ref": "#/components/responses/RequestThrottled"
          },
          "500": {
            "$ref": "#/components/responses/ServerError"
          }
        }
      }
    },
    "/v1/seller/report/{reportId}": {
      "get": {
        "deprecated": true,
        "operationId": "GetReport",
        "tags": [
          "Report"
        ],
        "summary": "Report\n",
        "security": [
          {
            "SellerAuth": []
          }
        ],
        "description": "Download finsihed report as gzip compressed json\n",
        "parameters": [
          {
            "in": "path",
            "required": true,
            "name": "reportId",
            "description": "Identifier of the report returned by `RequestReport`",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Report result as gzip compressed json",
            "content": {
              "application/gzip": {
                "schema": {
                  "type": "string",
                  "format": "binary"
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/BadRequest"
          },
          "401": {
            "$ref": "#/components/responses/AccessForbidden"
          },
          "404": {
            "$ref": "#/components/responses/ResourceNotFound"
          },
          "429": {
            "$ref": "#/components/responses/RequestThrottled"
          },
          "500": {
            "$ref": "#/components/responses/ServerError"
          }
        }
      }
    },
    "/v1/seller/ticket/attachment/{channel}": {
      "get": {
        "operationId": "GetTicketAttachment",
        "tags": [
          "Ticket"
        ],
        "summary": "Download Attachment",
        "security": [
          {
            "SellerAuth": []
          }
        ],
        "description": "Download Attachment\n",
        "parameters": [
          {
            "in": "path",
            "name": "channel",
            "description": "Channel name the ticket attachment belongs to.",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/Channel"
            }
          },
          {
            "in": "query",
            "name": "sellerId",
            "description": "ID of the seller that owns the ticket attachment.",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/SellerId"
            }
          },
          {
            "in": "query",
            "name": "ticketId",
            "description": "ID of the ticket the attachment belongs to.",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/TicketId"
            }
          },
          {
            "in": "query",
            "name": "filename",
            "description": "Filename of the attachment to download.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "$ref": "#/components/responses/TicketAttachmentResponse"
          },
          "400": {
            "$ref": "#/components/responses/BadRequest"
          },
          "401": {
            "$ref": "#/components/responses/AccessForbidden"
          },
          "404": {
            "$ref": "#/components/responses/ResourceNotFound"
          },
          "429": {
            "$ref": "#/components/responses/RequestThrottled"
          },
          "500": {
            "$ref": "#/components/responses/ServerError"
          }
        }
      },
      "post": {
        "operationId": "UploadTicketAttachment",
        "tags": [
          "Ticket"
        ],
        "summary": "Upload Attachment",
        "description": "Upload a attachment for a Ticket\n",
        "security": [
          {
            "SellerAuth": []
          }
        ],
        "parameters": [
          {
            "in": "path",
            "name": "channel",
            "description": "Channel name the ticket attachment should be uploaded to.",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/Channel"
            }
          }
        ],
        "requestBody": {
          "description": "Multipart upload of a single attachment file for an existing ticket.",
          "content": {
            "multipart/form-data": {
              "schema": {
                "$ref": "#/components/schemas/TicketAttachmentRequest"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Attachment uploaded"
          },
          "400": {
            "$ref": "#/components/responses/BadRequest"
          },
          "401": {
            "$ref": "#/components/responses/AccessForbidden"
          },
          "404": {
            "$ref": "#/components/responses/ResourceNotFound"
          },
          "429": {
            "$ref": "#/components/responses/RequestThrottled"
          },
          "500": {
            "$ref": "#/components/responses/ServerError"
          }
        }
      }
    },
    "/v1/seller/ticket": {
      "post": {
        "operationId": "CreateTicket",
        "tags": [
          "Ticket"
        ],
        "summary": "Reply to Ticket",
        "description": "Reply to a Ticket from Channel API\n",
        "security": [
          {
            "SellerAuth": []
          }
        ],
        "requestBody": {
          "$ref": "#/components/requestBodies/TicketReply"
        },
        "responses": {
          "201": {
            "description": "Ticket created"
          },
          "400": {
            "$ref": "#/components/responses/BadRequest"
          },
          "401": {
            "$ref": "#/components/responses/AccessForbidden"
          },
          "404": {
            "$ref": "#/components/responses/BadRequest"
          },
          "429": {
            "$ref": "#/components/responses/RequestThrottled"
          },
          "500": {
            "$ref": "#/components/responses/ServerError"
          }
        }
      }
    }
  },
  "components": {
    "requestBodies": {
      "OrderShippingRequest": {
        "description": "Shipping notification for one or more order line items, including carrier and tracking information.",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/OrderShipping"
            }
          }
        }
      },
      "OrderPaymentRequest": {
        "description": "Payment notification for one or more order line items reported by the seller.",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/SellerOrderPayment"
            }
          }
        }
      },
      "OrderCancellationRequestRequest": {
        "description": "Seller-initiated request to cancel one or more line items of an existing marketplace order.",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/SellerOrderCancellationRequest"
            }
          }
        }
      },
      "OrderCancellationAcceptRequest": {
        "description": "Seller acceptance of a cancellation that was previously requested by the marketplace customer.",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/OrderCancellationAccept"
            }
          }
        }
      },
      "OrderCancellationDeniedRequest": {
        "description": "Seller denial of a cancellation that was previously requested by the marketplace customer.",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/OrderCancellationDenied"
            }
          }
        }
      },
      "OfferListRequest": {
        "description": "List of product offers (new or updated) to be published on the marketplace.",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/ProductOfferList"
            }
          }
        }
      },
      "ProductPictureRequest": {
        "description": "Binary product picture file (JPEG/PNG/GIF/SVG) to be uploaded for a product offer.",
        "content": {
          "application/*": {
            "schema": {
              "type": "string",
              "format": "binary"
            }
          }
        }
      },
      "FileUploadRequest": {
        "description": "Generic binary file upload (image or document) for a product offer.",
        "content": {
          "application/*": {
            "schema": {
              "type": "string",
              "format": "binary"
            }
          }
        }
      },
      "OfferEndRequest": {
        "description": "List of offer identifiers that should be ended (de-listed) on the marketplace.",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/OfferEndList"
            }
          }
        }
      },
      "OfferStockChangeRequest": {
        "description": "Stock-level changes for one or more existing offers.",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/OfferStockList"
            }
          }
        }
      },
      "OfferPriceChangeRequest": {
        "description": "Price changes for one or more existing offers.",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/OfferPriceChangeList"
            }
          }
        }
      },
      "AcknowledgeEventIdListRequest": {
        "description": "List of event IDs the seller has successfully processed and which should be marked as acknowledged.",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/EventIdList"
            }
          }
        }
      },
      "RequestReport": {
        "description": "Request to generate an asynchronous report (e.g. orders, returns, settlements) for the seller.",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/SellerReportRequest"
            }
          }
        }
      },
      "OrderAccept": {
        "description": "Seller acceptance of a marketplace order, confirming that it will be fulfilled.",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/OrderAccept"
            }
          }
        }
      },
      "Invoice": {
        "description": "Invoice metadata together with the binary PDF document for a marketplace order.",
        "content": {
          "multipart/form-data": {
            "schema": {
              "type": "object",
              "required": [
                "invoice",
                "document"
              ],
              "properties": {
                "invoice": {
                  "description": "Invoice Meta Data as JSON to identify for which order a invoice document is uploaded.",
                  "type": "object",
                  "required": [
                    "channel"
                  ],
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/SellerInvoiceMetaData"
                    },
                    {
                      "properties": {
                        "channel": {
                          "$ref": "#/components/schemas/Channel"
                        }
                      }
                    }
                  ]
                },
                "document": {
                  "description": "The Invoice document as binary data must be type of PDF and have a maximum size of 16 MB.",
                  "type": "string",
                  "format": "binary"
                }
              }
            },
            "encoding": {
              "document": {
                "contentType": "application/pdf"
              }
            }
          }
        }
      },
      "ReturnReceived": {
        "description": "Notification that a return shipment has been received and inspected by the seller.",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/SellerReturnReceived"
            }
          }
        }
      },
      "SendRefund": {
        "description": "Refund payment to be issued to the customer for a marketplace order.",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/SendRefund"
            }
          }
        }
      },
      "TicketReply": {
        "description": "Seller reply to an existing customer service ticket on the marketplace.",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/SellerTicketReply"
            }
          }
        }
      }
    },
    "responses": {
      "SellerAccountList": {
        "description": "List of linked seller accounts.",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/SellerAccountList"
            }
          }
        }
      },
      "SellerAccountSignupSession": {
        "description": "Start a Seller Signup Process",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/SignupSession"
            }
          }
        }
      },
      "SellerAccountUpdateSession": {
        "description": "Start a Seller Update Process",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/UpdateSession"
            }
          }
        }
      },
      "EventList": {
        "description": "List of unacknowledged channel and system events",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/ChannelEventList"
            },
            "examples": {
              "ChannelDataChanged": {
                "$ref": "#/components/examples/ChannelDataChangedExample"
              },
              "OrderNew": {
                "$ref": "#/components/examples/OrderNewExample"
              },
              "OrderStatusUpdate": {
                "$ref": "#/components/examples/OrderUpdateExample"
              },
              "OrderAddressUpdate": {
                "$ref": "#/components/examples/OrderAddressUpdateExample"
              },
              "OrderCancellationRequestAccept": {
                "$ref": "#/components/examples/OrderCancellationRequestAcceptExample"
              },
              "OrderCancellationRequestDenied": {
                "$ref": "#/components/examples/OrderCancellationRequestDeniedExample"
              },
              "ChannelEventNotification": {
                "$ref": "#/components/examples/ChannelEventNotificationExample"
              },
              "OfferListingInProgress": {
                "$ref": "#/components/examples/OfferListingInProgressExample"
              },
              "OfferListingSuccessful": {
                "$ref": "#/components/examples/OfferListingSuccessfulExample"
              },
              "OfferListingFailed": {
                "$ref": "#/components/examples/OfferListingFailedExample"
              },
              "ReportProcessingFinished": {
                "$ref": "#/components/examples/ReportProcessingFinishedExample"
              },
              "MetaDataChanged": {
                "$ref": "#/components/examples/MetaDataChangedExample"
              }
            }
          }
        }
      },
      "PictureUpload": {
        "description": "Pictures received",
        "content": {
          "application/json": {
            "schema": {
              "type": "object",
              "properties": {
                "remoteImage": {
                  "type": "string",
                  "example": "a947e0c4-f88f-47bd-afe4-3a11e28c8f85.png"
                }
              }
            }
          }
        }
      },
      "FileUpload": {
        "description": "File received",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/FileUploadResponse"
            }
          }
        }
      },
      "ChannelCategory": {
        "description": "Channel category tree (JSON, optionally gzip-compressed)",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/CategoryTree"
            }
          },
          "application/gzip": {
            "schema": {
              "type": "string",
              "format": "binary"
            }
          }
        }
      },
      "SellerAttributes": {
        "description": "List of seller-level attributes for the requested channel",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/SellerAttributeList"
            }
          }
        }
      },
      "ChannelAttributes": {
        "description": "List of channel-wide attributes",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/AttributeList"
            }
          }
        }
      },
      "CategoryAttributes": {
        "description": "List of attributes valid for the requested category",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/AttributeList"
            }
          }
        }
      },
      "CategoryTreeVersionList": {
        "description": "Current category tree version per channel",
        "content": {
          "application/json": {
            "schema": {
              "type": "array",
              "items": {
                "type": "object",
                "properties": {
                  "channel": {
                    "$ref": "#/components/schemas/Channel"
                  },
                  "categoryTreeVersion": {
                    "type": "string",
                    "example": "2019060115430"
                  }
                }
              }
            }
          }
        }
      },
      "SupportedPricesTypes": {
        "description": "Price types supported by the channel",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/SupportedPriceTypes"
            }
          }
        }
      },
      "ReportRequested": {
        "description": "Report request accepted; identifier returned for later download",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/ReportRequestResult"
            }
          }
        }
      },
      "ChannelShippingRuleMeta": {
        "description": "Shipping rules supported by the channel",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/ChannelShippingRuleMeta"
            }
          }
        }
      },
      "ChannelPaymentRulesMeta": {
        "description": "Payment Rules",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/ChannelPaymentRulesMeta"
            }
          }
        }
      },
      "Invoice": {
        "description": "Invoice Document",
        "content": {
          "application/pdf": {
            "schema": {
              "type": "string",
              "format": "binary"
            }
          }
        }
      },
      "AccessForbidden": {
        "description": "Access forbidden, invalid or unknown Token was used."
      },
      "RequestThrottled": {
        "description": "User has send to many requests"
      },
      "ServerError": {
        "description": "Unexpected Server Error",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/ErrorResponseList"
            },
            "example": {
              "errorList": [
                {
                  "code": "GEN500",
                  "message": "Internal Server Error",
                  "severity": "error",
                  "hint": null
                }
              ]
            }
          }
        }
      },
      "BadRequest": {
        "description": "Bad Request",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/ErrorResponseList"
            },
            "example": {
              "errorList": [
                {
                  "code": "VAL100",
                  "message": "Required field sellerId not found",
                  "severity": "error",
                  "hint": "Check the field `sellerId` — it must be a non-empty string."
                }
              ]
            }
          }
        }
      },
      "ResourceNotFound": {
        "description": "Requested resource not found.",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/ErrorResponseList"
            },
            "example": {
              "errorList": [
                {
                  "code": "GEN404",
                  "message": "Not found",
                  "severity": "error",
                  "hint": null
                }
              ]
            }
          }
        }
      },
      "Created": {
        "description": "Created"
      },
      "NoContent": {
        "description": "No Content"
      },
      "OptionalErrorResponse": {
        "description": "Call was overall successful but some items can be faulty",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/ErrorResponseList"
            },
            "example": {
              "errorList": [
                {
                  "code": "CHN401",
                  "message": "Not all orders could be processed. 9 out of 10 orders were stored successfully",
                  "severity": "warning",
                  "hint": null
                }
              ]
            }
          }
        }
      },
      "TicketAttachmentResponse": {
        "description": "Ticket Attachment",
        "content": {
          "text/plain": {
            "schema": {
              "type": "string"
            }
          },
          "application/pdf": {
            "schema": {
              "type": "string",
              "format": "binary"
            }
          },
          "application/vnd.openxmlformats-officedocument.wordprocessingml.document": {
            "schema": {
              "type": "string",
              "format": "binary"
            }
          },
          "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet": {
            "schema": {
              "type": "string",
              "format": "binary"
            }
          },
          "application/vnd.ms-excel": {
            "schema": {
              "type": "string",
              "format": "binary"
            }
          },
          "application/msword": {
            "schema": {
              "type": "string",
              "format": "binary"
            }
          },
          "image/*": {
            "schema": {
              "type": "string",
              "format": "binary"
            }
          }
        }
      }
    },
    "schemas": {
      "FileUploadResponse": {
        "description": "Response for an uploaded file — references the temporary remote location and expiry timestamp.",
        "type": "object",
        "required": [
          "remoteFile",
          "expiresAt"
        ],
        "properties": {
          "remoteFile": {
            "type": "string",
            "example": "a947e0c4-f88f-47bd-afe4-3a11e28c8f85.png"
          },
          "expiresAt": {
            "type": "string",
            "format": "date-time"
          }
        }
      },
      "ChannelEventList": {
        "description": "Paginated batch of channel and system events the seller has not yet acknowledged.",
        "type": "object",
        "properties": {
          "eventList": {
            "type": "array",
            "minItems": 0,
            "maxItems": 100,
            "items": {
              "type": "object",
              "required": [
                "id",
                "createdAt",
                "type",
                "event"
              ],
              "properties": {
                "id": {
                  "type": "string",
                  "example": "5cde84164d811d00144581f8"
                },
                "createdAt": {
                  "type": "string",
                  "format": "date-time",
                  "example": "2019-07-01T12:43:23+00:00"
                },
                "type": {
                  "$ref": "#/components/schemas/ChannelEventTypeList"
                },
                "event": {
                  "type": "object",
                  "description": "Event payload. The concrete shape depends on the sibling `type` field.\nSee the listed schemas below for all supported event types.\n",
                  "anyOf": [
                    {
                      "$ref": "#/components/schemas/SystemEventNotification"
                    },
                    {
                      "$ref": "#/components/schemas/ChannelEventNotification"
                    },
                    {
                      "$ref": "#/components/schemas/ChannelEventOfferListingInProgress"
                    },
                    {
                      "$ref": "#/components/schemas/ChannelEventOfferListingSuccessful"
                    },
                    {
                      "$ref": "#/components/schemas/ChannelEventOfferListingFailed"
                    },
                    {
                      "$ref": "#/components/schemas/ChannelEventOrder"
                    },
                    {
                      "$ref": "#/components/schemas/ChannelEventOrderStatusUpdate"
                    },
                    {
                      "$ref": "#/components/schemas/ChannelEventOrderAddressUpdate"
                    },
                    {
                      "$ref": "#/components/schemas/ChannelEventTest"
                    },
                    {
                      "$ref": "#/components/schemas/ChannelEventReportData"
                    },
                    {
                      "$ref": "#/components/schemas/ChannelEventDataComplete"
                    },
                    {
                      "$ref": "#/components/schemas/ChannelEventMetaDataChanged"
                    },
                    {
                      "$ref": "#/components/schemas/ChannelEventOrderCancellationAccepted"
                    },
                    {
                      "$ref": "#/components/schemas/ChannelEventOrderCancellationDenied"
                    },
                    {
                      "$ref": "#/components/schemas/ChannelEventOrderCancellationRequest"
                    },
                    {
                      "$ref": "#/components/schemas/ChannelEventOrderInvoice"
                    },
                    {
                      "$ref": "#/components/schemas/ChannelEventOrderReturn"
                    },
                    {
                      "$ref": "#/components/schemas/ChannelEventOrderReturnProcessingResult"
                    },
                    {
                      "$ref": "#/components/schemas/ChannelEventOrderRefundProcessingResult"
                    },
                    {
                      "$ref": "#/components/schemas/ChannelEventTicket"
                    },
                    {
                      "$ref": "#/components/schemas/ChannelEventChannelDataChanged"
                    }
                  ]
                }
              }
            }
          }
        }
      },
      "SignupSession": {
        "description": "Result of starting a seller signup session — contains the redirect URL the seller has to visit and the session expiry.",
        "type": "object",
        "properties": {
          "signUpUrl": {
            "description": "Signup Url\n",
            "type": "string",
            "example": "https://signup.mybestdeals.com/?sid=c6b28bd5-e0b4-4857-9d9c-e8a9ac40241b&expires=1557149104"
          },
          "expiresAt": {
            "type": "integer",
            "format": "int64",
            "example": 1557149104
          }
        }
      },
      "UpdateSession": {
        "description": "Result of starting a seller update session — contains the redirect URL the seller has to visit, the affected sellerId and session expiry.",
        "type": "object",
        "properties": {
          "updateUrl": {
            "description": "URL the seller has to visit to update the existing channel link\n",
            "type": "string",
            "example": "https://update.mybestdeals.com/?sid=c6b28bd5-e0b4-4857-9d9c-e8a9ac40241b&expires=1557149104"
          },
          "sellerId": {
            "$ref": "#/components/schemas/SellerId"
          },
          "expiresAt": {
            "type": "integer",
            "format": "int64",
            "example": 1557149104
          }
        }
      },
      "SellerAccountList": {
        "description": "List of seller accounts that are currently linked to the requesting JTL account.",
        "type": "object",
        "properties": {
          "sellerList": {
            "type": "array",
            "minItems": 0,
            "items": {
              "$ref": "#/components/schemas/Seller"
            }
          }
        }
      },
      "ProductOfferList": {
        "description": "Batch of product offers (product master data plus per-channel offer data) to be created or updated.",
        "type": "object",
        "required": [
          "offerList"
        ],
        "properties": {
          "offerList": {
            "type": "array",
            "minItems": 1,
            "maxItems": 100,
            "items": {
              "$ref": "#/components/schemas/Offer"
            }
          }
        }
      },
      "OfferStockList": {
        "description": "Batch of stock-quantity updates for existing offers, identified per channel and seller.",
        "type": "object",
        "properties": {
          "offerList": {
            "type": "array",
            "minItems": 1,
            "maxItems": 5000,
            "items": {
              "title": "OfferStockUpdate",
              "type": "object",
              "required": [
                "channel",
                "sellerId",
                "offerId",
                "quantity"
              ],
              "properties": {
                "channel": {
                  "$ref": "#/components/schemas/Channel"
                },
                "offerId": {
                  "$ref": "#/components/schemas/OfferId"
                },
                "sellerId": {
                  "$ref": "#/components/schemas/SellerId"
                },
                "channelOfferId": {
                  "$ref": "#/components/schemas/ChannelOfferId"
                },
                "quantity": {
                  "type": "string",
                  "format": "double"
                }
              }
            }
          }
        }
      },
      "OfferPriceChangeList": {
        "description": "Batch of price-change updates for existing offers, with one or more price entries per offer.",
        "type": "object",
        "properties": {
          "offerList": {
            "type": "array",
            "minItems": 1,
            "maxItems": 5000,
            "items": {
              "type": "object",
              "required": [
                "offerId",
                "channel",
                "sellerId",
                "priceList"
              ],
              "properties": {
                "channel": {
                  "$ref": "#/components/schemas/Channel"
                },
                "offerId": {
                  "$ref": "#/components/schemas/OfferId"
                },
                "sellerId": {
                  "$ref": "#/components/schemas/SellerId"
                },
                "channelOfferId": {
                  "$ref": "#/components/schemas/ChannelOfferId"
                },
                "priceList": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/PriceContainer"
                  }
                }
              }
            }
          }
        }
      },
      "OfferEndList": {
        "description": "Batch of offers to be ended (delisted) on the marketplace.",
        "type": "object",
        "properties": {
          "offerList": {
            "type": "array",
            "minItems": 1,
            "maxItems": 5000,
            "items": {
              "type": "object",
              "required": [
                "channel",
                "sellerId"
              ],
              "properties": {
                "channel": {
                  "$ref": "#/components/schemas/Channel"
                },
                "sellerId": {
                  "$ref": "#/components/schemas/SellerId"
                },
                "offerId": {
                  "$ref": "#/components/schemas/OfferId"
                },
                "channelOfferId": {
                  "$ref": "#/components/schemas/ChannelOfferId"
                }
              }
            }
          }
        }
      },
      "Offer": {
        "description": "A product together with one or more sales-channel offers (per-channel listing data such as price and stock).",
        "type": "object",
        "required": [
          "salesChannelOfferList",
          "product"
        ],
        "properties": {
          "salesChannelOfferList": {
            "type": "array",
            "items": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/SalesChannelOfferBase"
                },
                {
                  "$ref": "#/components/schemas/SalesChannelOffer"
                }
              ]
            }
          },
          "product": {
            "$ref": "#/components/schemas/Product"
          }
        }
      },
      "OrderShipping": {
        "description": "Batch of shipping notifications for marketplace orders (carrier, tracking number, ship date).",
        "type": "object",
        "properties": {
          "orderList": {
            "type": "array",
            "items": {
              "type": "object",
              "required": [
                "channel"
              ],
              "allOf": [
                {
                  "$ref": "#/components/schemas/SellerOrderShipping"
                },
                {
                  "properties": {
                    "channel": {
                      "$ref": "#/components/schemas/Channel"
                    }
                  }
                }
              ]
            }
          }
        }
      },
      "SellerOrderPayment": {
        "description": "Batch of payment notifications reported by the seller for marketplace orders.",
        "type": "object",
        "properties": {
          "orderList": {
            "type": "array",
            "items": {
              "type": "object",
              "required": [
                "channel"
              ],
              "allOf": [
                {
                  "$ref": "#/components/schemas/OrderPayment"
                },
                {
                  "properties": {
                    "channel": {
                      "$ref": "#/components/schemas/Channel"
                    }
                  }
                }
              ]
            }
          }
        }
      },
      "SellerOrderCancellationRequest": {
        "description": "Cancellation request the seller submits to the marketplace for an order, scoped to a specific channel.",
        "type": "object",
        "title": "SellerOrderCancellationRequest",
        "allOf": [
          {
            "type": "object",
            "properties": {
              "channel": {
                "$ref": "#/components/schemas/Channel"
              }
            }
          },
          {
            "$ref": "#/components/schemas/OrderCancellationRequest"
          }
        ]
      },
      "OrderCancellationAccept": {
        "description": "Seller acceptance of a cancellation request previously raised by the marketplace, scoped to a channel.",
        "title": "OrderCancellationAccept",
        "type": "object",
        "required": [
          "channel"
        ],
        "allOf": [
          {
            "type": "object",
            "properties": {
              "channel": {
                "$ref": "#/components/schemas/Channel"
              }
            }
          },
          {
            "$ref": "#/components/schemas/CancellationAccept"
          }
        ]
      },
      "OrderCancellationDenied": {
        "description": "Seller rejection of a cancellation request previously raised by the marketplace, including the reason.",
        "title": "OrderCancellationDenied",
        "type": "object",
        "required": [
          "channel"
        ],
        "allOf": [
          {
            "type": "object",
            "properties": {
              "channel": {
                "$ref": "#/components/schemas/Channel"
              }
            }
          },
          {
            "$ref": "#/components/schemas/CancellationDenied"
          }
        ]
      },
      "OrderAccept": {
        "description": "Batch of seller order confirmations — acknowledges that the listed orders will be fulfilled.",
        "title": "OrderConfirm",
        "type": "object",
        "properties": {
          "orderList": {
            "type": "array",
            "minItems": 1,
            "maxItems": 1000,
            "items": {
              "type": "object",
              "required": [
                "channel"
              ],
              "allOf": [
                {
                  "type": "object",
                  "properties": {
                    "channel": {
                      "$ref": "#/components/schemas/Channel"
                    }
                  }
                },
                {
                  "$ref": "#/components/schemas/OrderConfirm"
                }
              ]
            }
          }
        }
      },
      "SupportedPriceTypes": {
        "description": "List of price types (e.g. gross, net, sale) the channel accepts in offer price updates.",
        "type": "object",
        "properties": {
          "supportedPriceTypeList": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/PriceType"
            }
          }
        }
      },
      "SellerReportRequest": {
        "description": "Seller request to generate a marketplace report (e.g. inventory, orders) for a specific channel.",
        "type": "object",
        "allOf": [
          {
            "properties": {
              "channel": {
                "$ref": "#/components/schemas/Channel"
              }
            }
          },
          {
            "$ref": "#/components/schemas/ReportRequest"
          }
        ],
        "required": [
          "channel"
        ]
      },
      "ReportRequestResult": {
        "description": "Acknowledgement of a report request — returns the reportId, whether it is newly created (vs. deduplicated) and a TTL.",
        "type": "object",
        "title": "ReportRequestResult",
        "properties": {
          "sellerId": {
            "$ref": "#/components/schemas/SellerId"
          },
          "channel": {
            "$ref": "#/components/schemas/Channel"
          },
          "reportId": {
            "$ref": "#/components/schemas/ReportId"
          },
          "created": {
            "description": "Indicates if the report request was created as with new reportId. SCX Seller Api is doing a\ndeduplication and will return value `false` if there is an existing not yet processed report with the\nsame parameters. The reportId returned is same from the open report.\n",
            "type": "boolean",
            "example": true
          },
          "expiresIn": {
            "description": "Seconds until the report is deleted from the system. Default TTL is 48h.\n",
            "type": "integer",
            "example": 172500
          }
        }
      },
      "ChannelShippingRuleMeta": {
        "description": "Shipping rules supported by the channel — list of carriers and the regions they serve.",
        "type": "object",
        "title": "ChannelShippingRuleMeta",
        "properties": {
          "supportedCarrierList": {
            "type": "array",
            "minItems": 0,
            "items": {
              "$ref": "#/components/schemas/SupportedCarrier"
            }
          }
        }
      },
      "ChannelPaymentRulesMeta": {
        "description": "Payment rules supported by the channel — list of accepted payment methods.",
        "type": "object",
        "title": "ChannelPaymentRulesMeta",
        "properties": {
          "supportedPaymentMethodList": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/SupportedPaymentMethod"
            }
          }
        }
      },
      "SellerReturnReceived": {
        "description": "Seller notification that a return shipment has been received and inspected, scoped to a channel.",
        "type": "object",
        "required": [
          "channel"
        ],
        "allOf": [
          {
            "type": "object",
            "properties": {
              "channel": {
                "$ref": "#/components/schemas/Channel"
              }
            }
          },
          {
            "$ref": "#/components/schemas/ReturnReceived"
          }
        ]
      },
      "SendRefund": {
        "description": "Refund payment the seller wants to issue to the customer for a marketplace order, scoped to a channel.",
        "type": "object",
        "title": "SendRefund",
        "required": [
          "channel"
        ],
        "allOf": [
          {
            "type": "object",
            "properties": {
              "channel": {
                "$ref": "#/components/schemas/Channel"
              }
            }
          },
          {
            "$ref": "#/components/schemas/Refund"
          }
        ]
      },
      "SellerTicketReply": {
        "description": "Seller reply to an existing customer service ticket on the marketplace, scoped to a channel.",
        "title": "SellerTicketReply",
        "type": "object",
        "required": [
          "channel"
        ],
        "allOf": [
          {
            "type": "object",
            "properties": {
              "channel": {
                "$ref": "#/components/schemas/Channel"
              }
            }
          },
          {
            "$ref": "#/components/schemas/TicketReply"
          }
        ]
      },
      "SellerId": {
        "description": "A unique Id identify a Seller on a specific SalesChannel. The SellerId is generated\nfrom the Channel itself during the Seller SignUp Process.\n",
        "type": "string",
        "example": "4711",
        "pattern": "^\\w{1,50}$"
      },
      "Channel": {
        "description": "This is the unique Channel name.\n",
        "type": "string",
        "example": "MYBESTDEALCOMDE",
        "pattern": "^\\w{5,15}$"
      },
      "Seller": {
        "type": "object",
        "required": [
          "channel",
          "sellerId",
          "isActive",
          "createdAt"
        ],
        "properties": {
          "sellerId": {
            "$ref": "#/components/schemas/SellerId"
          },
          "channel": {
            "$ref": "#/components/schemas/Channel"
          },
          "createdAt": {
            "type": "string",
            "format": "date-time",
            "example": "2019-03-13T20:21:43+00:00"
          },
          "updatedAt": {
            "type": "string",
            "format": "date-time",
            "example": "2019-03-13T20:21:43+00:00",
            "nullable": true
          },
          "isActive": {
            "type": "boolean",
            "default": true
          },
          "isActiveByChannel": {
            "type": "boolean",
            "default": true
          },
          "reason": {
            "type": "string",
            "enum": [
              "DEACTIVATED_BY_CHANNEL",
              "DEACTIVATED_BY_SELLER",
              "DEACTIVATED_BY_JTL"
            ],
            "default": null,
            "nullable": true
          },
          "companyName": {
            "type": "string",
            "nullable": true,
            "example": "Bernd's brennender Brennholzverleih GmbH"
          }
        }
      },
      "ErrorResponseList": {
        "type": "object",
        "properties": {
          "errorList": {
            "nullable": true,
            "type": "array",
            "example": [
              {
                "code": "GEN700",
                "message": "Seller SELLER_4711 does not exist on channel kaufland.",
                "severity": "error",
                "hint": "i9n-order22"
              }
            ],
            "items": {
              "title": "Error",
              "type": "object",
              "properties": {
                "code": {
                  "type": "string",
                  "example": "GEN700"
                },
                "message": {
                  "type": "string",
                  "example": "Seller SELLER_4711 does not exist on channel kaufland."
                },
                "severity": {
                  "type": "string",
                  "enum": [
                    "error",
                    "warning",
                    "info"
                  ],
                  "default": "error"
                },
                "hint": {
                  "type": "string",
                  "nullable": true,
                  "example": "i9n-order22"
                }
              }
            }
          }
        }
      },
      "SalesChannelOfferBase": {
        "type": "object",
        "properties": {
          "channel": {
            "$ref": "#/components/schemas/Channel"
          }
        }
      },
      "OfferId": {
        "description": "Unique Offer Id to identify an Offer on a Sales Channel.\n",
        "type": "integer",
        "example": 5437233,
        "format": "int64",
        "minimum": 1,
        "maxLength": 50
      },
      "ParentOfferId": {
        "description": "In case the current offer has an reference to a parent offer. This ParentOfferId must be used to identify the\nParent Offer. The ParentOfferId is conditionally mandatory for variation Offers in case you add a new Item\nto a existing Variation Offer Listing.\n",
        "type": "integer",
        "example": 3434223,
        "format": "int64",
        "minimum": 1,
        "nullable": true
      },
      "ChannelOfferId": {
        "description": "Channel defined unique Offer Id to identify an Offer on a Sales Channel.\n",
        "type": "string",
        "example": "XCD233554",
        "minLength": 1,
        "maxLength": 100
      },
      "QuantityPrice": {
        "type": "object",
        "required": [
          "amount",
          "currency"
        ],
        "properties": {
          "amount": {
            "type": "string",
            "example": "14.65",
            "nullable": false
          },
          "currency": {
            "type": "string",
            "example": "EUR",
            "nullable": false
          },
          "quantity": {
            "type": "string",
            "example": "1.0",
            "nullable": true,
            "default": "1.0"
          }
        }
      },
      "PriceContainer": {
        "type": "object",
        "required": [
          "id",
          "quantityPriceList"
        ],
        "properties": {
          "id": {
            "type": "string",
            "example": "B2C",
            "nullable": false
          },
          "quantityPriceList": {
            "type": "array",
            "minItems": 1,
            "maxItems": 50,
            "items": {
              "$ref": "#/components/schemas/QuantityPrice"
            }
          }
        }
      },
      "ChannelAttribute": {
        "type": "object",
        "required": [
          "attributeId",
          "value"
        ],
        "properties": {
          "attributeId": {
            "type": "string",
            "example": "1332"
          },
          "value": {
            "type": "string",
            "example": "MyBeerBrand"
          },
          "group": {
            "type": "string",
            "nullable": true,
            "example": "1"
          }
        }
      },
      "SKU": {
        "description": "Stock keeping unit is a unique Id used to identify one product.\n",
        "type": "string",
        "example": "BEER-001",
        "minLength": 1,
        "maxLength": 150
      },
      "Variation": {
        "type": "object",
        "properties": {
          "offerId": {
            "$ref": "#/components/schemas/OfferId"
          },
          "sku": {
            "$ref": "#/components/schemas/SKU"
          },
          "gtin": {
            "type": "string",
            "example": "4003227021106"
          },
          "variationDimensionList": {
            "description": "A List of SalesChannel related attributes. These attributes are used to define variation dimensions.\nYou can use up to 10 dimensions to build a multi-variation listing.\n",
            "type": "array",
            "minItems": 1,
            "maxItems": 10,
            "items": {
              "$ref": "#/components/schemas/ChannelAttribute"
            }
          },
          "quantity": {
            "description": "Offer Quantity",
            "type": "string",
            "example": "1.0"
          },
          "priceList": {
            "type": "array",
            "minItems": 1,
            "maxItems": 10,
            "items": {
              "$ref": "#/components/schemas/PriceContainer"
            }
          },
          "taxPercent": {
            "type": "string",
            "example": "19.00"
          },
          "pictureList": {
            "type": "array",
            "maxItems": 50,
            "items": {
              "type": "string",
              "example": "b61525f4-8114-4cc2-bccd-9c627ebdc077.png"
            }
          },
          "title": {
            "description": "Title used for this variation listing on SalesChannel. If no title is provided, the SalesChannelOffer title should be used.\n",
            "type": "string",
            "example": "One of the best Beer Variation in the Variation Listing World.",
            "maxLength": 512
          },
          "subTitle": {
            "description": "Subtitle used for this variation listing on SalesChannel. If no subtitle is provided, the SalesChannelOffer Subtitel\nshould be used.\n",
            "type": "string",
            "example": "Maybe the best Variation List SubTitle!",
            "maxLength": 1024
          },
          "description": {
            "description": "Description used for this variation listing on SalesChannel. If no description is provided, the SalesChannelOffer description\nshould be used.\n",
            "type": "string",
            "example": "This Offer Variation description is for this specific SalesChannel\n",
            "maxLength": 50000
          },
          "channelAttributeList": {
            "description": "A List of SalesChannel related attributes. Typically all required attributes need to be passed through this\nobjects. Required (and also optional) attributes can be requested using the /meta Data API endpoints.\n\nA Channel should merge the SalesChannelOffer channelAttributeList with this Attribute List. This List extends\nthe Attributes from the SalesChannelOffer channelAttributeList property and should be overwrite existing\nAttributes.\n",
            "type": "array",
            "minItems": 0,
            "maxItems": 256,
            "items": {
              "$ref": "#/components/schemas/ChannelAttribute"
            }
          }
        },
        "required": [
          "offerId",
          "sku",
          "variationDimensionList",
          "quantity",
          "priceList"
        ]
      },
      "SalesChannelOffer": {
        "type": "object",
        "required": [
          "channel",
          "sellerId",
          "offerId",
          "priceList"
        ],
        "properties": {
          "sellerId": {
            "$ref": "#/components/schemas/SellerId"
          },
          "offerId": {
            "$ref": "#/components/schemas/OfferId"
          },
          "parentOfferId": {
            "$ref": "#/components/schemas/ParentOfferId"
          },
          "channelOfferId": {
            "$ref": "#/components/schemas/ChannelOfferId"
          },
          "channelCategoryId": {
            "type": "string",
            "example": "4355111"
          },
          "quantity": {
            "description": "Offer Quantity",
            "type": "string",
            "example": "1.0"
          },
          "taxPercent": {
            "type": "string",
            "example": "19.00"
          },
          "priceList": {
            "type": "array",
            "minItems": 1,
            "items": {
              "$ref": "#/components/schemas/PriceContainer"
            }
          },
          "title": {
            "description": "Title used for this specific SalesChannel. If no title is provided, the product title should be used.\n",
            "type": "string",
            "example": "One of the best Beer in the World.",
            "maxLength": 512
          },
          "subTitle": {
            "description": "Subtitle used for this specific SalesChannel. If no subtitle is provided, the product description\nshould be used.\n",
            "type": "string",
            "example": "Maybe the best!",
            "maxLength": 1024
          },
          "description": {
            "description": "Description used for this specific SalesChannel. If no description is provided, the product description\nshould be used.\n",
            "type": "string",
            "example": "This Offer description is for this specific SalesChannel\n",
            "maxLength": 50000
          },
          "mainPicture": {
            "type": "string",
            "example": "48dd485e-bab9-48fa-8c03-3736fca1323d.png"
          },
          "pictureList": {
            "type": "array",
            "maxItems": 50,
            "items": {
              "type": "string",
              "example": "b61525f4-8114-4cc2-bccd-9c627ebdc077.png"
            }
          },
          "channelAttributeList": {
            "description": "A List of SalesChannel related attributes. Typically all required attributes need to be passed through this\nobjects. Required (and also optional) attributes can be requested using the /meta Data API endpoints.\n",
            "type": "array",
            "minItems": 0,
            "maxItems": 250,
            "items": {
              "$ref": "#/components/schemas/ChannelAttribute"
            }
          },
          "variationList": {
            "type": "array",
            "minItems": 0,
            "maxItems": 500,
            "items": {
              "$ref": "#/components/schemas/Variation"
            }
          }
        }
      },
      "Price": {
        "type": "object",
        "required": [
          "amount",
          "currency"
        ],
        "properties": {
          "amount": {
            "type": "string",
            "example": "14.65",
            "nullable": false
          },
          "currency": {
            "type": "string",
            "example": "EUR",
            "nullable": false
          }
        }
      },
      "ProductAttribute": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "example": "Color"
          },
          "value": {
            "type": "string",
            "example": "Red"
          }
        },
        "required": [
          "name",
          "value"
        ]
      },
      "Product": {
        "type": "object",
        "required": [
          "sku"
        ],
        "properties": {
          "sku": {
            "$ref": "#/components/schemas/SKU"
          },
          "title": {
            "type": "string",
            "example": "Best Beer of the World",
            "minLength": 1,
            "maxLength": 512
          },
          "subTitle": {
            "type": "string",
            "example": "Probably the best!",
            "maxLength": 1024
          },
          "description": {
            "type": "string",
            "example": "So lovely and tasty! Properly the best beer you will ever have.\nYou will never stop drinking.\n",
            "maxLength": 50000
          },
          "gtin": {
            "type": "string",
            "example": "4003227021106"
          },
          "mpn": {
            "type": "string",
            "example": null
          },
          "isbn": {
            "type": "string",
            "example": null
          },
          "brand": {
            "type": "string",
            "example": null
          },
          "srp": {
            "$ref": "#/components/schemas/Price"
          },
          "productAttributeList": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ProductAttribute"
            }
          }
        }
      },
      "ChannelEventTypeList": {
        "type": "string",
        "enum": [
          "System:Test",
          "System:Notification",
          "Channel:ChannelDataChanged",
          "Channel:Notification",
          "Channel:Offer.ListingInProgress",
          "Channel:Offer.ListingSuccessful",
          "Channel:Offer.ListingFailed",
          "Channel:Order",
          "Channel:Order.StatusUpdate",
          "Channel:Order.AddressUpdate",
          "Channel:Order.Cancellation.Request",
          "Channel:Order.Cancellation.Accepted",
          "Channel:Order.Cancellation.Denied",
          "Channel:Order.Invoice",
          "Channel:Order.Return",
          "Channel:Order.ReturnProcessingResult",
          "Channel:Order.RefundProcessingResult",
          "Channel:Report.ProcessingFinished",
          "Channel:Report.DataComplete",
          "Channel:Report.Data",
          "Channel:MetaDataChanged",
          "Channel:Ticket"
        ]
      },
      "SystemEventNotification": {
        "title": "SystemEventNotification",
        "type": "object",
        "required": [
          "channel",
          "message",
          "severity",
          "sellerId"
        ],
        "properties": {
          "channel": {
            "$ref": "#/components/schemas/Channel"
          },
          "sellerId": {
            "$ref": "#/components/schemas/SellerId"
          },
          "message": {
            "type": "string",
            "example": "More beer available"
          },
          "severity": {
            "type": "string",
            "enum": [
              "INFO",
              "WARNING",
              "ERROR"
            ]
          }
        }
      },
      "ChannelRelatedEvent": {
        "type": "object",
        "required": [
          "channel"
        ],
        "properties": {
          "channel": {
            "$ref": "#/components/schemas/Channel"
          }
        }
      },
      "ChannelNotificationSeverity": {
        "type": "string",
        "enum": [
          "INFO",
          "WARNING",
          "ERROR"
        ],
        "default": "INFO",
        "example": "INFO"
      },
      "ChannelNotificationReferenceType": {
        "type": "string",
        "example": "OFFER",
        "enum": [
          "OFFER",
          "CHANNELOFFER",
          "ORDERITEMID"
        ]
      },
      "Notification": {
        "type": "object",
        "required": [
          "sellerId",
          "severity",
          "message"
        ],
        "properties": {
          "sellerId": {
            "$ref": "#/components/schemas/SellerId"
          },
          "severity": {
            "$ref": "#/components/schemas/ChannelNotificationSeverity"
          },
          "message": {
            "type": "string",
            "example": "Product Data could not be updated"
          },
          "reference": {
            "title": "ChannelNotificationReference",
            "type": "object",
            "nullable": true,
            "required": [
              "type",
              "id"
            ],
            "properties": {
              "type": {
                "$ref": "#/components/schemas/ChannelNotificationReferenceType"
              },
              "id": {
                "type": "string",
                "example": "19820701"
              }
            }
          }
        }
      },
      "ChannelEventNotification": {
        "title": "ChannelEventNotification",
        "type": "object",
        "required": [
          "sellerId",
          "message"
        ],
        "allOf": [
          {
            "$ref": "#/components/schemas/ChannelRelatedEvent"
          },
          {
            "$ref": "#/components/schemas/Notification"
          }
        ]
      },
      "OfferListingInProgress": {
        "type": "object",
        "required": [
          "sellerId",
          "offerId",
          "startedAt"
        ],
        "properties": {
          "sellerId": {
            "$ref": "#/components/schemas/SellerId"
          },
          "offerId": {
            "$ref": "#/components/schemas/OfferId"
          },
          "startedAt": {
            "type": "string",
            "format": "date-time",
            "example": "2019-07-01T15:43:21+00:00"
          }
        }
      },
      "ChannelEventOfferListingInProgress": {
        "title": "ChannelEventOfferListingInProgress",
        "type": "object",
        "allOf": [
          {
            "$ref": "#/components/schemas/ChannelRelatedEvent"
          },
          {
            "$ref": "#/components/schemas/OfferListingInProgress"
          }
        ]
      },
      "OfferListingSuccessful": {
        "type": "object",
        "required": [
          "sellerId",
          "offerId",
          "listedAt"
        ],
        "properties": {
          "sellerId": {
            "$ref": "#/components/schemas/SellerId"
          },
          "offerId": {
            "$ref": "#/components/schemas/OfferId"
          },
          "channelOfferId": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ChannelOfferId"
              }
            ],
            "nullable": true
          },
          "listedAt": {
            "type": "string",
            "format": "date-time",
            "example": "2019-07-01T15:43:21+00:00"
          },
          "listingUrl": {
            "type": "string",
            "nullable": true,
            "example": "https://mybestdeals.com/listing/1224232323"
          }
        }
      },
      "ChannelEventOfferListingSuccessful": {
        "title": "ChannelEventOfferListingSuccessful",
        "type": "object",
        "allOf": [
          {
            "$ref": "#/components/schemas/ChannelRelatedEvent"
          },
          {
            "$ref": "#/components/schemas/OfferListingSuccessful"
          }
        ]
      },
      "OfferListingFailedError": {
        "type": "object",
        "required": [
          "code",
          "message"
        ],
        "properties": {
          "code": {
            "type": "string",
            "minLength": 1,
            "maxLength": 255,
            "example": "CHN500",
            "description": "A unique error code identifier for the specific type of error encountered."
          },
          "message": {
            "type": "string",
            "minLength": 1,
            "maxLength": 250,
            "example": "Global attribute brand not found",
            "description": "A brief description of the error, intended to be human-readable and understandable."
          },
          "longMessage": {
            "type": "string",
            "minLength": 1,
            "maxLength": 10000,
            "nullable": true,
            "example": "This is a long and more detailed error messages",
            "description": "An optional, more detailed explanation of the error, providing additional context or information that might help in understanding or resolving the issue."
          },
          "relatedAttributeId": {
            "type": "string",
            "minLength": 1,
            "maxLength": 512,
            "nullable": true,
            "example": "global:mpi",
            "description": "An optional identifier for the attribute related to the error, which can help in pinpointing the exact cause or location of the issue."
          },
          "recommendedValue": {
            "type": "string",
            "minLength": 1,
            "maxLength": 1000,
            "nullable": true,
            "example": "MPI_OLEOLE1234",
            "description": "An optional recommended value or action to resolve the error, providing guidance on how to correct the issue or avoid it in future attempts."
          }
        }
      },
      "OfferListingFailed": {
        "type": "object",
        "required": [
          "sellerId",
          "offerId",
          "errorList",
          "failedAt"
        ],
        "properties": {
          "sellerId": {
            "$ref": "#/components/schemas/SellerId"
          },
          "offerId": {
            "$ref": "#/components/schemas/OfferId"
          },
          "errorList": {
            "type": "array",
            "minItems": 1,
            "maxItems": 250,
            "items": {
              "$ref": "#/components/schemas/OfferListingFailedError"
            }
          },
          "failedAt": {
            "type": "string",
            "format": "date-time",
            "example": "2019-07-01T15:43:21+00:00"
          }
        }
      },
      "ChannelEventOfferListingFailed": {
        "title": "ChannelEventOfferListingFailed",
        "type": "object",
        "allOf": [
          {
            "$ref": "#/components/schemas/ChannelRelatedEvent"
          },
          {
            "$ref": "#/components/schemas/OfferListingFailed"
          }
        ]
      },
      "ChannelOrderStatus": {
        "description": "The current order status.\n\n* **UNACKED**: Order is created in Marketplace but a Seller acknowledge is required.\n* **CREATED**: Order is created but not yet completed.\n* **ACCEPTED**: Order is placed and checkout process is complete but not yet shipped.\n* (DEPRECATED) ~~SHIPPED~~: All items in the order have been shipped\n* (DEPRECATED) ~~PARTIALLY_SHIPPED~~: Some items (but not all) have been shipped.\n* (DEPRECATED) ~~CANCELED_BY_SELLER~~: Order is canceled by seller.\n* (DEPRECATED) ~~CANCELED_BY_BUYER~~: Order is canceled by buyer.\n",
        "type": "string",
        "enum": [
          "UNACKED",
          "CREATED",
          "ACCEPTED",
          "SHIPPED",
          "PARTIALLY_SHIPPED",
          "CANCELED_BY_SELLER",
          "CANCELED_BY_BUYER"
        ]
      },
      "ChannelOrderId": {
        "type": "string",
        "minLength": 1,
        "maxLength": 150,
        "example": "43523-43432-43532"
      },
      "OrderItemId": {
        "description": "A unique identifier to identify a order item. This ID is provided by the Channel itself an should be used to identify a order item id.",
        "type": "string",
        "example": "5437233",
        "format": "string",
        "minLength": 1,
        "maxLength": 50
      },
      "OrderItemStatus": {
        "description": "The current for order item.\n\n* **UNSHIPPED**: Item is ready for shipping\n* **SHIPPED**: Item is sent to buyer\n* **CANCELED_BY_SELLER**: Order is canceled by seller.\n* **CANCELED_BY_BUYER**: Order is canceled by buyer.\n* **RETURNED**: Item is returned to Seller.\n* **REFUNDED**: Item was returned and refunded.\n",
        "type": "string",
        "enum": [
          "UNSHIPPED",
          "SHIPPED",
          "CANCELED_BY_SELLER",
          "CANCELED_BY_BUYER",
          "RETURNED",
          "REFUNDED"
        ]
      },
      "OrderItemPaymentStatus": {
        "description": "The current payment status\n\n* **PENDING**: Order Item is not yet paid.\n* **PAID**: Order Item is complete paid.\n",
        "type": "string",
        "enum": [
          "PENDING",
          "PAID"
        ]
      },
      "AdditionalOrderDataGroupValues": {
        "title": "AdditionalOrderDataGroupValues",
        "type": "object",
        "properties": {
          "key": {
            "type": "string",
            "description": "The key is used to identify the additional order data. The key can be used multiple times in the list and\nwe recommend to use a human readable key.\n",
            "minLength": 1,
            "maxLength": 255,
            "example": "Advertising fee"
          },
          "value": {
            "type": "string",
            "description": "The value is used to store the additional order data and must be always a string.\n",
            "minLength": 1,
            "maxLength": 5000,
            "example": "0.50 USD"
          }
        }
      },
      "AdditionalOrderDataGroup": {
        "title": "AdditionalOrderDataGroup",
        "description": "Additional order data is a list of key value pairs and should be used to add additional information to an order.\nThe data is used by a connected client implementation (such as JTL-Wawi) to display and print this information.\n",
        "type": "object",
        "properties": {
          "group": {
            "type": "string",
            "description": "The group name is used to group the additional order data. The group name must be unique in the list.\n",
            "minLength": 1,
            "maxLength": 150,
            "example": "Marketplace Fees"
          },
          "values": {
            "type": "array",
            "minItems": 1,
            "maxItems": 50,
            "items": {
              "$ref": "#/components/schemas/AdditionalOrderDataGroupValues"
            }
          }
        }
      },
      "OrderItemTypeItem": {
        "type": "object",
        "title": "OrderItemTypeItem",
        "properties": {
          "orderItemId": {
            "$ref": "#/components/schemas/OrderItemId"
          },
          "type": {
            "type": "string",
            "default": "ITEM"
          },
          "itemStatus": {
            "$ref": "#/components/schemas/OrderItemStatus"
          },
          "itemPaymentStatus": {
            "$ref": "#/components/schemas/OrderItemPaymentStatus"
          },
          "grossPrice": {
            "type": "string",
            "example": "2.00",
            "description": "The order item gross price\nThe gross price is not allowed to have more than 2 decimal places.\n"
          },
          "total": {
            "type": "string",
            "example": "2.00",
            "description": "Overall gross price (quantity * grossPrice)\nThe total is not allowed to have more than 2 decimal places.\n"
          },
          "taxPercent": {
            "type": "string",
            "nullable": true,
            "example": "16.00"
          },
          "grossFee": {
            "description": "The accrued sales charge (gross), which is levied by the marketplace. This property is optional and if a\nmarketplace does not support sales fees then this property must be null or not present.\nThe gross fee is not allowed to have more than 2 decimal places.\n",
            "type": "string",
            "example": "0.29",
            "nullable": true
          },
          "offerId": {
            "$ref": "#/components/schemas/OfferId"
          },
          "channelOfferId": {
            "$ref": "#/components/schemas/ChannelOfferId"
          },
          "sku": {
            "$ref": "#/components/schemas/SKU"
          },
          "quantity": {
            "type": "string",
            "default": "1.0",
            "example": "1.0"
          },
          "title": {
            "type": "string",
            "example": "Dark Beer"
          },
          "estimatedShippingDate": {
            "type": "string",
            "format": "date-time",
            "example": "2010-03-11T00:00:00+00:00"
          },
          "estimatedDeliveryDate": {
            "type": "string",
            "format": "date-time",
            "example": "2010-03-12T00:00:00+00:00"
          },
          "remainingQuantity": {
            "type": "string",
            "description": "Includes the rest of the inventory available on the connected Marketplace. The remaining quanity can be used\nby a connected client implementation (such as JTL-Wawi) to manage quanity updates.\n",
            "nullable": true,
            "example": "54.0"
          },
          "additionalOrderItemData": {
            "description": "Additional order data is a list of key value pairs. The key is a string and the value is a string or a number.\nThe key must be unique in the list.\n",
            "type": "array",
            "minItems": 0,
            "maxItems": 10,
            "items": {
              "$ref": "#/components/schemas/AdditionalOrderDataGroup"
            }
          },
          "shipFromCountry": {
            "description": "Ship from country (Versandland) - ISO 3 letter country code indicating the country from which the item is shipped\n",
            "type": "string",
            "pattern": "^[A-Z]{3}$",
            "nullable": true,
            "example": "DEU"
          }
        },
        "required": [
          "orderItemId",
          "type",
          "grossPrice",
          "total"
        ]
      },
      "shippingGroup": {
        "description": "The shipping group is a unique identifier about what kind of shipping method and carrier is used to fulfill a order. A shipping group can be given by the connected salesChannel or defined by the seller itself.",
        "type": "string",
        "example": "DHL_DOMESTIC"
      },
      "OrderItemTypeShipping": {
        "type": "object",
        "title": "OrderItemTypeShipping",
        "properties": {
          "orderItemId": {
            "$ref": "#/components/schemas/OrderItemId"
          },
          "type": {
            "type": "string",
            "default": "SHIPPING"
          },
          "grossPrice": {
            "type": "string",
            "example": "3.99"
          },
          "taxPercent": {
            "type": "string",
            "example": "19.00",
            "nullable": true
          },
          "shippingGroup": {
            "$ref": "#/components/schemas/shippingGroup"
          }
        },
        "required": [
          "orderItemId",
          "type",
          "grossPrice",
          "shippingGroup"
        ]
      },
      "OrderItemTypePayment": {
        "type": "object",
        "title": "OrderItemTypePayment",
        "properties": {
          "orderItemId": {
            "$ref": "#/components/schemas/OrderItemId"
          },
          "type": {
            "type": "string",
            "default": "PAYMENT"
          },
          "grossPrice": {
            "type": "string",
            "example": "3.99"
          },
          "taxPercent": {
            "type": "string",
            "example": "19.00",
            "nullable": true
          },
          "note": {
            "type": "string",
            "example": "Cash on delivery"
          }
        },
        "required": [
          "orderItemId",
          "type",
          "grossPrice",
          "note"
        ]
      },
      "OrderItem": {
        "type": "object",
        "anyOf": [
          {
            "$ref": "#/components/schemas/OrderItemTypeItem"
          },
          {
            "$ref": "#/components/schemas/OrderItemTypeShipping"
          },
          {
            "$ref": "#/components/schemas/OrderItemTypePayment"
          }
        ]
      },
      "Address": {
        "type": "object",
        "required": [
          "lastName",
          "street",
          "city",
          "country"
        ],
        "properties": {
          "firstName": {
            "type": "string",
            "example": "Arno"
          },
          "lastName": {
            "type": "string",
            "example": "Nym"
          },
          "gender": {
            "type": "string",
            "enum": [
              "male",
              "female",
              "diverse"
            ]
          },
          "companyName": {
            "type": "string"
          },
          "street": {
            "type": "string",
            "example": "Leyboldstrasse"
          },
          "houseNumber": {
            "type": "string",
            "example": "14a"
          },
          "addition": {
            "type": "string",
            "example": "1. UG"
          },
          "postcode": {
            "type": "string",
            "example": "50354"
          },
          "city": {
            "type": "string",
            "example": "Hürth"
          },
          "phone": {
            "type": "string",
            "example": "+49 0221 123456"
          },
          "country": {
            "type": "string",
            "example": "DE"
          },
          "state": {
            "type": "string",
            "example": "NRW",
            "nullable": true
          }
        }
      },
      "OrderBuyer": {
        "type": "object",
        "properties": {
          "email": {
            "type": "string",
            "format": "email"
          },
          "vatId": {
            "type": "string"
          }
        }
      },
      "Order": {
        "title": "Order",
        "type": "object",
        "properties": {
          "sellerId": {
            "$ref": "#/components/schemas/SellerId"
          },
          "orderStatus": {
            "$ref": "#/components/schemas/ChannelOrderStatus"
          },
          "orderAcceptUntil": {
            "description": "When `orderStatus` is type `UNACKED` a Seller integration must confirn a Order bevor it can be proccessed.\nThis field provides a time until when an order can be accepted. To accept an Order a Seller integration must\ninvoke API call `PUT /v1/seller/order/accept`.\n",
            "type": "string",
            "format": "date-time"
          },
          "paymentMethod": {
            "type": "string",
            "example": "CHANNEL",
            "minLength": 1,
            "maxLength": 150
          },
          "paymentReference": {
            "description": "Payment reference can be used to reference or identify a payment transaction",
            "type": "string"
          },
          "orderId": {
            "$ref": "#/components/schemas/ChannelOrderId"
          },
          "purchasedAt": {
            "type": "string",
            "format": "date-time",
            "example": "2019-02-11T14:54:32+00:00"
          },
          "lastChangedAt": {
            "type": "string",
            "format": "date-time",
            "example": "2019-02-11T16:54:32+00:00"
          },
          "currency": {
            "type": "string",
            "example": "EUR"
          },
          "orderItem": {
            "description": "List of Order Positions such as Order Items, Shipping or Payment. There must be at least on Item of Type ITEM and at least on Item of Type SHIPPING.\n",
            "type": "array",
            "minItems": 1,
            "items": {
              "$ref": "#/components/schemas/OrderItem"
            }
          },
          "billingAddress": {
            "$ref": "#/components/schemas/Address"
          },
          "shippingAddress": {
            "$ref": "#/components/schemas/Address"
          },
          "note": {
            "description": "A optional note",
            "type": "string",
            "example": "This note can be everything, but a least a additional message."
          },
          "buyer": {
            "$ref": "#/components/schemas/OrderBuyer"
          },
          "weeePickup": {
            "description": "This Order require a electrical and electronic equipment disposal service (WEEE)\n",
            "type": "boolean",
            "example": true,
            "nullable": true
          },
          "language": {
            "description": "The language of the order as a ISO 639-1 language code",
            "type": "string",
            "nullable": true,
            "example": "de"
          },
          "invoiceDocumentTransfer": {
            "description": "This field indicates whether the channel provides the invoice document or the seller has to upload it.\nThis overwrites the default setting of the channel.\nPossible values are:\n- `from-seller`: Seller has to upload the invoice document\n- `from-channel`: Channel provides the invoice document\n- `not-set` (Default): Use the default setting of the channel or indicates that invoice transfer is not supported\n",
            "type": "string",
            "enum": [
              "not-set",
              "from-seller",
              "from-channel"
            ],
            "nullable": true,
            "default": "not-set",
            "example": "from-seller"
          },
          "additionalOrderData": {
            "description": "Additional order data is a list of key value pairs. The key is a string and the value is a string or a number.\nThe key must be unique in the list.\n",
            "type": "array",
            "minItems": 0,
            "maxItems": 10,
            "items": {
              "$ref": "#/components/schemas/AdditionalOrderDataGroup"
            }
          },
          "fbc": {
            "description": "Fulfillment by Channel - indicates if the order is fulfilled by the channel\n",
            "type": "boolean",
            "nullable": true,
            "default": null,
            "example": true
          },
          "b2b": {
            "description": "Business to Business - indicates if this is a B2B order\n",
            "type": "boolean",
            "nullable": true,
            "default": null,
            "example": false
          },
          "salesChannelName": {
            "description": "Sales channel name (Verkaufskanalname) - identifies the specific sales channel\n",
            "type": "string",
            "maxLength": 100,
            "nullable": true,
            "example": "MyMarketplace.de"
          }
        },
        "required": [
          "sellerId",
          "orderStatus",
          "orderId",
          "purchasedAt",
          "lastChangedAt",
          "currency",
          "orderItem"
        ]
      },
      "ChannelEventOrder": {
        "title": "ChannelEventOrder",
        "type": "object",
        "allOf": [
          {
            "$ref": "#/components/schemas/ChannelRelatedEvent"
          },
          {
            "$ref": "#/components/schemas/Order"
          }
        ]
      },
      "OrderStatus": {
        "type": "object",
        "required": [
          "sellerId",
          "orderId",
          "orderStatus"
        ],
        "properties": {
          "sellerId": {
            "$ref": "#/components/schemas/SellerId"
          },
          "orderId": {
            "$ref": "#/components/schemas/ChannelOrderId"
          },
          "orderStatus": {
            "$ref": "#/components/schemas/ChannelOrderStatus"
          },
          "orderItems": {
            "type": "array",
            "minItems": 0,
            "items": {
              "type": "object",
              "required": [
                "orderItemId",
                "itemStatus",
                "paymentStatus"
              ],
              "properties": {
                "orderItemId": {
                  "$ref": "#/components/schemas/OrderItemId"
                },
                "itemStatus": {
                  "$ref": "#/components/schemas/OrderItemStatus"
                },
                "paymentStatus": {
                  "$ref": "#/components/schemas/OrderItemPaymentStatus"
                },
                "shipFromCountry": {
                  "description": "Ship from country (Versandland) - ISO 3 letter country code indicating the country from which the item is shipped\n",
                  "type": "string",
                  "pattern": "^[A-Z]{3}$",
                  "nullable": true,
                  "example": "DEU"
                }
              }
            }
          }
        }
      },
      "ChannelEventOrderStatusUpdate": {
        "title": "ChannelEventOrderStatusUpdate",
        "type": "object",
        "allOf": [
          {
            "$ref": "#/components/schemas/ChannelRelatedEvent"
          },
          {
            "$ref": "#/components/schemas/OrderStatus"
          }
        ]
      },
      "OrderAddressUpdate": {
        "type": "object",
        "properties": {
          "sellerId": {
            "$ref": "#/components/schemas/SellerId"
          },
          "orderId": {
            "$ref": "#/components/schemas/ChannelOrderId"
          },
          "billingAddress": {
            "allOf": [
              {
                "$ref": "#/components/schemas/Address"
              }
            ],
            "nullable": true
          },
          "shippingAddress": {
            "allOf": [
              {
                "$ref": "#/components/schemas/Address"
              }
            ],
            "nullable": true
          },
          "buyer": {
            "allOf": [
              {
                "$ref": "#/components/schemas/OrderBuyer"
              }
            ],
            "nullable": true
          }
        },
        "required": [
          "sellerId",
          "orderId"
        ]
      },
      "ChannelEventOrderAddressUpdate": {
        "title": "ChannelEventOrderAddressUpdate",
        "type": "object",
        "allOf": [
          {
            "$ref": "#/components/schemas/ChannelRelatedEvent"
          },
          {
            "$ref": "#/components/schemas/OrderAddressUpdate"
          }
        ]
      },
      "ChannelEventTest": {
        "title": "ChannelEventTest",
        "type": "object",
        "properties": {
          "channel": {
            "$ref": "#/components/schemas/Channel"
          },
          "sellerId": {
            "$ref": "#/components/schemas/SellerId"
          }
        },
        "required": [
          "channel",
          "sellerId"
        ]
      },
      "ReportId": {
        "type": "string",
        "description": "A system wide unique Id to identify and download a report\n",
        "example": "910390cc-c3b3-45ba-8be2-ab1824b6c499"
      },
      "ReportType": {
        "type": "string",
        "enum": [
          "SELLER_INVENTORY"
        ]
      },
      "SellerInventoryItem": {
        "type": "object",
        "title": "SellerInventoryItem",
        "properties": {
          "offerId": {
            "$ref": "#/components/schemas/OfferId"
          },
          "channelOfferId": {
            "$ref": "#/components/schemas/ChannelOfferId"
          },
          "sku": {
            "$ref": "#/components/schemas/SKU"
          },
          "ean": {
            "type": "string",
            "example": "4003227021106"
          },
          "quantity": {
            "type": "string",
            "example": "1.0"
          },
          "priceList": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/PriceContainer"
            }
          },
          "title": {
            "type": "string",
            "example": "One of the best Beer in the World."
          },
          "channelCategoryId": {
            "type": "string",
            "example": "4355111"
          },
          "channelAttributeList": {
            "type": "array",
            "minItems": 0,
            "maxItems": 1000,
            "items": {
              "$ref": "#/components/schemas/ChannelAttribute"
            }
          }
        }
      },
      "ReportSellerInventory": {
        "type": "array",
        "minItems": 1,
        "maxItems": 100,
        "items": {
          "$ref": "#/components/schemas/SellerInventoryItem"
        }
      },
      "ReportData": {
        "type": "object",
        "properties": {
          "sellerId": {
            "$ref": "#/components/schemas/SellerId"
          },
          "reportId": {
            "$ref": "#/components/schemas/ReportId"
          },
          "reportType": {
            "$ref": "#/components/schemas/ReportType"
          },
          "data": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ReportSellerInventory"
            }
          },
          "checkSum": {
            "type": "string",
            "description": "A checksum for the data. The checksum is used to verify the integrity and the amount of the received data.\n",
            "example": "aee97cb3ad288ef0add6c6b5b5fae48a"
          }
        }
      },
      "ChannelEventReportData": {
        "type": "object",
        "title": "ReportData",
        "allOf": [
          {
            "$ref": "#/components/schemas/ChannelRelatedEvent"
          },
          {
            "$ref": "#/components/schemas/ReportData"
          }
        ]
      },
      "ReportDataComplete": {
        "description": "This event marks the end of a Report Data Event stream. Once this event is received, it signifies that the event \ndata is complete and no further data will be transmitted for this report.\n",
        "type": "object",
        "properties": {
          "sellerId": {
            "$ref": "#/components/schemas/SellerId"
          },
          "reportId": {
            "$ref": "#/components/schemas/ReportId"
          },
          "reportType": {
            "$ref": "#/components/schemas/ReportType"
          },
          "receivedChecksumList": {
            "description": "A list of checksums for the received data. The checksums are used to verify the integrity and the \namount the former received data.\n",
            "type": "array",
            "items": {
              "type": "string"
            },
            "example": [
              "aee97cb3ad288ef0add6c6b5b5fae48a",
              "f95e303d517a6a63c8e5975137b70a9c",
              "b1308e45d7501076cd34ebb17d843a9b"
            ]
          }
        }
      },
      "ChannelEventDataComplete": {
        "type": "object",
        "title": "ReportDataComplete",
        "allOf": [
          {
            "$ref": "#/components/schemas/ChannelRelatedEvent"
          },
          {
            "$ref": "#/components/schemas/ReportDataComplete"
          }
        ]
      },
      "ChannelEventMetaDataChanged": {
        "type": "object",
        "title": "MetaDataChanged",
        "allOf": [
          {
            "$ref": "#/components/schemas/ChannelRelatedEvent"
          },
          {
            "type": "object",
            "properties": {
              "type": {
                "type": "string",
                "enum": [
                  "CATEGORY",
                  "GLOBAL_ATTRIBUTES",
                  "SELLER_ATTRIBUTES",
                  "PRICE_TYPES",
                  "SHIPPING_RULES",
                  "PAYMENT_RULES"
                ],
                "example": "SELLER_ATTRIBUTES"
              },
              "resource": {
                "type": "string",
                "example": "/seller/meta/MBDCOM/seller/attributes"
              }
            }
          }
        ]
      },
      "OrderCancellationRequestId": {
        "type": "string",
        "description": "A unique identifier for the order cancellation request. This ID should by used by Seller to identify the cancellation response from the Channel.\n",
        "format": "uuid",
        "example": "82992d3a-b153-4422-b539-f4d1f1b4aecb"
      },
      "CancellationAccept": {
        "required": [
          "sellerId",
          "orderCancellationRequestId"
        ],
        "properties": {
          "sellerId": {
            "$ref": "#/components/schemas/SellerId"
          },
          "orderCancellationRequestId": {
            "$ref": "#/components/schemas/OrderCancellationRequestId"
          }
        }
      },
      "ChannelEventOrderCancellationAccepted": {
        "type": "object",
        "title": "OrderCancellationAccepted",
        "required": [
          "sellerId",
          "orderCancellationRequestId"
        ],
        "allOf": [
          {
            "$ref": "#/components/schemas/ChannelRelatedEvent"
          },
          {
            "$ref": "#/components/schemas/CancellationAccept"
          }
        ]
      },
      "CancellationDenied": {
        "required": [
          "sellerId",
          "orderCancellationRequestId",
          "reason"
        ],
        "properties": {
          "sellerId": {
            "$ref": "#/components/schemas/SellerId"
          },
          "orderCancellationRequestId": {
            "$ref": "#/components/schemas/OrderCancellationRequestId"
          },
          "reason": {
            "type": "string",
            "maxLength": 250
          }
        }
      },
      "ChannelEventOrderCancellationDenied": {
        "type": "object",
        "title": "OrderCancellationDenied",
        "required": [
          "sellerId",
          "orderCancellationRequestId",
          "reason"
        ],
        "allOf": [
          {
            "$ref": "#/components/schemas/ChannelRelatedEvent"
          },
          {
            "$ref": "#/components/schemas/CancellationDenied"
          }
        ]
      },
      "CancelReason": {
        "type": "string",
        "description": "* BUYER_CANCELLED: the buyer cancelled the order.\n* UNDELIVERABLE_TO_SHIPPING_ADDRESS: Could not deliver to the address given by the buyer.\n* UNDELIVERABLE_BY_CARRIER: Carrier do not ship to the buyerss location.\n* OUT_OF_STOCK: The item is out of stock, for example because you are temporarily or permenantly sold out.\n* DELAYED_INVENTORY: The item is not in your inventory and there is a delay in delivery by the supplier.\n* PRICING_ERROR: The price on the connected marketplace was incorrect.\n* OTHER: Well, objvoiusly there is some reason missing in this list.\n",
        "enum": [
          "BUYER_CANCELLED",
          "UNDELIVERABLE_TO_SHIPPING_ADDRESS",
          "UNDELIVERABLE_BY_CARRIER",
          "OUT_OF_STOCK",
          "DELAYED_INVENTORY",
          "PRICING_ERROR",
          "OTHER"
        ]
      },
      "OrderCancellationRequest": {
        "type": "object",
        "title": "OrderCancellationRequest",
        "required": [
          "orderCancellationRequestId",
          "channel",
          "sellerId",
          "orderId",
          "orderItem",
          "reason"
        ],
        "properties": {
          "orderCancellationRequestId": {
            "$ref": "#/components/schemas/OrderCancellationRequestId"
          },
          "sellerId": {
            "$ref": "#/components/schemas/SellerId"
          },
          "orderId": {
            "$ref": "#/components/schemas/ChannelOrderId"
          },
          "orderItem": {
            "type": "array",
            "nullable": true,
            "minItems": 1,
            "items": {
              "type": "object",
              "title": "OrderCancellationItem",
              "required": [
                "orderItemId"
              ],
              "properties": {
                "orderItemId": {
                  "$ref": "#/components/schemas/OrderItemId"
                },
                "quantity": {
                  "type": "string",
                  "default": "1.0",
                  "example": "2.0"
                }
              }
            }
          },
          "cancelReason": {
            "$ref": "#/components/schemas/CancelReason"
          },
          "message": {
            "type": "string",
            "minLength": 0,
            "maxLength": 1024
          }
        }
      },
      "ChannelEventOrderCancellationRequest": {
        "title": "ChannelEventOrderCancellationRequest",
        "type": "object",
        "allOf": [
          {
            "$ref": "#/components/schemas/ChannelRelatedEvent"
          },
          {
            "$ref": "#/components/schemas/OrderCancellationRequest"
          }
        ]
      },
      "InvoiceDocumentType": {
        "type": "string",
        "enum": [
          "INVOICE",
          "CREDITNOTE"
        ],
        "default": "INVOICE"
      },
      "OrderInvoiceTransactionItemDiscounts": {
        "type": "object",
        "required": [
          "totalGrossPrice",
          "totalNetPrice",
          "totalVatAmount"
        ],
        "properties": {
          "name": {
            "description": "Discount name",
            "type": "string",
            "nullable": true,
            "example": "10% Winter Sale"
          },
          "discountId": {
            "description": "Channel Related Discount ID",
            "type": "string",
            "nullable": true,
            "example": "D1265327"
          },
          "totalGrossPrice": {
            "type": "number",
            "format": "float",
            "minimum": 0,
            "default": 0
          },
          "totalNetPrice": {
            "type": "number",
            "format": "float",
            "minimum": 0,
            "default": 0
          },
          "totalVatAmount": {
            "type": "number",
            "format": "float",
            "minimum": 0,
            "default": 0
          },
          "vatRate": {
            "type": "number",
            "format": "float",
            "minimum": 0,
            "default": 0
          }
        }
      },
      "OrderInvoiceTransactionItem": {
        "type": "object",
        "required": [
          "orderItemId",
          "orderItemType",
          "totalGrossPriceWithDiscounts",
          "totalNetPriceWithDiscounts",
          "totalVatAmountWithDiscounts",
          "vatRate"
        ],
        "properties": {
          "orderItemId": {
            "type": "string"
          },
          "orderItemType": {
            "type": "string",
            "enum": [
              "ITEM",
              "SHIPPING",
              "PAYMENT"
            ]
          },
          "sku": {
            "type": "string"
          },
          "title": {
            "type": "string"
          },
          "quantity": {
            "type": "number",
            "format": "float",
            "minimum": 0,
            "default": 1
          },
          "totalGrossPriceWithDiscounts": {
            "type": "number",
            "minimum": 0,
            "format": "float"
          },
          "totalNetPriceWithDiscounts": {
            "type": "number",
            "minimum": 0,
            "format": "float"
          },
          "totalVatAmountWithDiscounts": {
            "type": "number",
            "minimum": 0,
            "format": "float"
          },
          "vatRate": {
            "type": "number",
            "minimum": 0,
            "format": "float"
          },
          "discounts": {
            "type": "array",
            "minItems": 0,
            "nullable": true,
            "items": {
              "$ref": "#/components/schemas/OrderInvoiceTransactionItemDiscounts"
            }
          }
        }
      },
      "OrderInvoice": {
        "type": "object",
        "required": [
          "orderId",
          "purchasedAt"
        ],
        "properties": {
          "orderId": {
            "$ref": "#/components/schemas/ChannelOrderId"
          },
          "purchasedAt": {
            "type": "string",
            "format": "date-time"
          },
          "shippingAddress": {
            "$ref": "#/components/schemas/Address"
          },
          "transactionItemList": {
            "type": "array",
            "minItems": 1,
            "items": {
              "$ref": "#/components/schemas/OrderInvoiceTransactionItem"
            }
          }
        }
      },
      "InvoiceMetaData": {
        "type": "object",
        "required": [
          "type",
          "sellerId",
          "orderId",
          "invoiceNumber",
          "billingAddress",
          "currency",
          "transactionDate",
          "taxCalculationDate"
        ],
        "properties": {
          "type": {
            "$ref": "#/components/schemas/InvoiceDocumentType"
          },
          "sellerId": {
            "$ref": "#/components/schemas/SellerId"
          },
          "orderId": {
            "$ref": "#/components/schemas/ChannelOrderId"
          },
          "invoiceNumber": {
            "type": "string",
            "minLength": 1,
            "maxLength": 256
          },
          "originalInvoiceNumber": {
            "type": "string",
            "nullable": true,
            "description": "A original Invoice Number is required when type is CREDITNOTE\n"
          },
          "transactionDate": {
            "type": "string",
            "format": "date-time",
            "description": "Date when the Invoice document was issued.\n"
          },
          "taxCalculationDate": {
            "type": "string",
            "format": "date-time",
            "description": "Date when the tax in the Invoice document was calculated.\n"
          },
          "transactionDetails": {
            "type": "string",
            "nullable": true
          },
          "shipmentDate": {
            "type": "string",
            "format": "date-time"
          },
          "taxAddressRole": {
            "type": "string",
            "enum": [
              "shipFrom",
              "shipTo"
            ]
          },
          "exportOutsideEu": {
            "type": "boolean"
          },
          "currency": {
            "type": "string"
          },
          "billingAddress": {
            "$ref": "#/components/schemas/Address"
          },
          "sellerVatNumber": {
            "type": "string",
            "nullable": true
          },
          "buyerVatNumber": {
            "type": "string",
            "nullable": true
          },
          "orderList": {
            "type": "array",
            "minItems": 1,
            "description": "List of orders that are part of the invoice document. There must be at least one order on a document.  If the invoice document type is INVOICE, the shipping address is required and can not be empty or null.\n",
            "items": {
              "$ref": "#/components/schemas/OrderInvoice"
            }
          }
        }
      },
      "ChannelEventOrderInvoice": {
        "type": "object",
        "title": "Invoice",
        "required": [
          "channel",
          "documentId",
          "documentExpiresAt"
        ],
        "allOf": [
          {
            "$ref": "#/components/schemas/InvoiceMetaData"
          },
          {
            "type": "object",
            "properties": {
              "channel": {
                "$ref": "#/components/schemas/Channel"
              },
              "documentId": {
                "type": "string",
                "example": "f8132e70-24f6-4f27-b78c-56bc3f286daf"
              },
              "documentExpiresAt": {
                "type": "string",
                "format": "date-time",
                "example": "2020-11-13T13:37:00+00:00"
              }
            }
          }
        ]
      },
      "ReturnReason": {
        "type": "string",
        "enum": [
          "NO_REASON",
          "DEFECT",
          "WRONG_ITEM",
          "WRONG_SIZE",
          "TOO_LATE",
          "BAD_QUALITY"
        ]
      },
      "ReturnAnnouncementOrderItem": {
        "type": "object",
        "required": [
          "orderItemId",
          "quantity",
          "returnReason"
        ],
        "properties": {
          "orderItemId": {
            "$ref": "#/components/schemas/OrderItemId"
          },
          "quantity": {
            "type": "string",
            "example": "1.0"
          },
          "returnReason": {
            "$ref": "#/components/schemas/ReturnReason"
          },
          "note": {
            "type": "string",
            "maxLength": 1024
          }
        }
      },
      "ChannelReturnId": {
        "type": "string",
        "description": "Id used to identify an order return on Marketplace.\n",
        "example": "R12343"
      },
      "ReturnAnnouncement": {
        "type": "object",
        "required": [
          "sellerId",
          "orderId",
          "channelReturnId"
        ],
        "properties": {
          "sellerId": {
            "$ref": "#/components/schemas/SellerId"
          },
          "orderId": {
            "$ref": "#/components/schemas/ChannelOrderId"
          },
          "orderItem": {
            "description": "Details about what will be to returned to Seller. If the orderItem list is empty as Seller must expect that the\nwhole order is returned.\n",
            "type": "array",
            "minItems": 0,
            "items": {
              "$ref": "#/components/schemas/ReturnAnnouncementOrderItem"
            }
          },
          "channelReturnId": {
            "$ref": "#/components/schemas/ChannelReturnId"
          },
          "returnTracking": {
            "type": "object",
            "required": [
              "carrier",
              "trackingNumber"
            ],
            "description": "Optional information about return tracking.\n",
            "properties": {
              "carrier": {
                "type": "string",
                "example": "DHL"
              },
              "trackingNumber": {
                "type": "string",
                "example": "12334-44332-323256"
              }
            }
          }
        }
      },
      "ChannelEventOrderReturn": {
        "type": "object",
        "title": "OrderReturn",
        "required": [
          "channel"
        ],
        "allOf": [
          {
            "type": "object",
            "properties": {
              "channel": {
                "$ref": "#/components/schemas/Channel"
              }
            }
          },
          {
            "$ref": "#/components/schemas/ReturnAnnouncement"
          }
        ]
      },
      "SellerReturnId": {
        "type": "string",
        "description": "Id used to identify an order return on Seller side.\n",
        "example": "123"
      },
      "ReturnProcessingError": {
        "title": "ReturnProcessingError",
        "required": [
          "message"
        ],
        "properties": {
          "code": {
            "type": "string",
            "example": "GEN615"
          },
          "message": {
            "type": "string",
            "minLength": 1,
            "maxLength": 1024
          }
        }
      },
      "ReturnProcessingResult": {
        "type": "object",
        "required": [
          "sellerId",
          "sellerReturnId",
          "isAccepted"
        ],
        "properties": {
          "sellerId": {
            "$ref": "#/components/schemas/SellerId"
          },
          "sellerReturnId": {
            "$ref": "#/components/schemas/SellerReturnId"
          },
          "isAccepted": {
            "type": "boolean",
            "example": false
          },
          "processingErrorList": {
            "type": "array",
            "minItems": 0,
            "maxItems": 500,
            "items": {
              "$ref": "#/components/schemas/ReturnProcessingError"
            }
          }
        }
      },
      "ChannelEventOrderReturnProcessingResult": {
        "type": "object",
        "title": "OrderReturnProcessingResult",
        "required": [
          "channel"
        ],
        "allOf": [
          {
            "type": "object",
            "properties": {
              "channel": {
                "$ref": "#/components/schemas/Channel"
              }
            }
          },
          {
            "$ref": "#/components/schemas/ReturnProcessingResult"
          }
        ]
      },
      "RefundId": {
        "type": "string",
        "description": "Seller created unique Id to identify the processing Result of a Refund processing from a Channel.\n",
        "minLength": 1,
        "maxLength": 128
      },
      "RefundProcessingError": {
        "title": "RefundProcessingError",
        "required": [
          "message"
        ],
        "properties": {
          "code": {
            "type": "string",
            "example": "GEN615"
          },
          "message": {
            "type": "string",
            "minLength": 1,
            "maxLength": 1024
          }
        }
      },
      "RefundProcessingResult": {
        "title": "RefundProcessingResult",
        "type": "object",
        "required": [
          "refundId",
          "sellerId",
          "isAccepted"
        ],
        "properties": {
          "refundId": {
            "$ref": "#/components/schemas/RefundId"
          },
          "sellerId": {
            "$ref": "#/components/schemas/SellerId"
          },
          "isAccepted": {
            "type": "boolean"
          },
          "processingErrorList": {
            "type": "array",
            "minItems": 0,
            "maxItems": 500,
            "items": {
              "$ref": "#/components/schemas/RefundProcessingError"
            }
          }
        }
      },
      "ChannelEventOrderRefundProcessingResult": {
        "type": "object",
        "title": "RefundProcessingResult",
        "required": [
          "channel"
        ],
        "allOf": [
          {
            "type": "object",
            "properties": {
              "channel": {
                "$ref": "#/components/schemas/Channel"
              }
            }
          },
          {
            "$ref": "#/components/schemas/RefundProcessingResult"
          }
        ]
      },
      "TicketId": {
        "type": "string",
        "description": "Unique identifcation for Ticket Id\n",
        "minLength": 1,
        "maxLength": 256,
        "example": "CASE-01071982"
      },
      "Topic": {
        "type": "string",
        "enum": [
          "QUESTION",
          "FEEDBACK",
          "DELIVERY",
          "RETURN",
          "REFUND",
          "INCIDENT"
        ]
      },
      "TicketReference": {
        "title": "TicketReference",
        "type": "object",
        "nullable": true,
        "required": [
          "type",
          "id"
        ],
        "properties": {
          "type": {
            "type": "string",
            "example": "ORDERID",
            "enum": [
              "OFFER",
              "CHANNELOFFER",
              "ORDERID",
              "ORDERITEMID"
            ]
          },
          "id": {
            "type": "string",
            "example": "19820701"
          }
        }
      },
      "TicketFrom": {
        "title": "TicketFrom",
        "type": "object",
        "required": [
          "role"
        ],
        "properties": {
          "role": {
            "type": "string",
            "enum": [
              "BUYER",
              "SELLER",
              "CHANNEL"
            ],
            "example": "BUYER"
          },
          "name": {
            "type": "string",
            "maxLength": 100,
            "example": "Dave"
          }
        }
      },
      "TicketAttachment": {
        "title": "TicketAttachment",
        "type": "object",
        "required": [
          "filename",
          "contentType"
        ],
        "properties": {
          "filename": {
            "type": "string",
            "minLength": 1,
            "maxLength": 256,
            "example": "RedDot.png"
          },
          "contentType": {
            "type": "string",
            "minLength": 1,
            "maxLength": 128,
            "example": "image/png"
          }
        }
      },
      "Ticket": {
        "title": "Ticket",
        "type": "object",
        "required": [
          "sellerId",
          "ticketId",
          "topic",
          "createdAt",
          "from",
          "subject",
          "message"
        ],
        "properties": {
          "sellerId": {
            "$ref": "#/components/schemas/SellerId"
          },
          "ticketId": {
            "$ref": "#/components/schemas/TicketId"
          },
          "topic": {
            "$ref": "#/components/schemas/Topic"
          },
          "reference": {
            "$ref": "#/components/schemas/TicketReference"
          },
          "replyRequested": {
            "type": "boolean",
            "example": true,
            "default": true
          },
          "createdAt": {
            "type": "string",
            "format": "date-time"
          },
          "from": {
            "$ref": "#/components/schemas/TicketFrom"
          },
          "subject": {
            "type": "string",
            "minLength": 1,
            "maxLength": 1024,
            "example": "Pod bay door seems to be locked."
          },
          "message": {
            "type": "string",
            "minLength": 1,
            "maxLength": 1024,
            "example": "Open the pod bay doors HAL."
          },
          "attachment": {
            "type": "array",
            "minItems": 0,
            "maxItems": 10,
            "items": {
              "$ref": "#/components/schemas/TicketAttachment"
            }
          }
        }
      },
      "ChannelEventTicket": {
        "title": "Ticket",
        "type": "object",
        "required": [
          "channel"
        ],
        "allOf": [
          {
            "type": "object",
            "properties": {
              "channel": {
                "$ref": "#/components/schemas/Channel"
              }
            }
          },
          {
            "$ref": "#/components/schemas/Ticket"
          }
        ]
      },
      "ChannelEventChannelDataChanged": {
        "title": "ChannelDataChanged",
        "type": "object",
        "required": [
          "channel"
        ],
        "properties": {
          "channel": {
            "$ref": "#/components/schemas/Channel"
          }
        }
      },
      "EventIdList": {
        "type": "object",
        "properties": {
          "eventIdList": {
            "type": "array",
            "minItems": 1,
            "maxItems": 100,
            "items": {
              "type": "string",
              "example": "5cde84164d811d00144581f8"
            }
          }
        }
      },
      "SupportedPaymentMethod": {
        "type": "object",
        "required": [
          "paymentMethodId"
        ],
        "properties": {
          "paymentMethodId": {
            "type": "string",
            "minLength": 1,
            "maxLength": 100,
            "example": "PM011"
          },
          "displayName": {
            "type": "string",
            "maxLength": 150,
            "example": "CreditCard"
          }
        }
      },
      "SupportedCarrier": {
        "type": "object",
        "required": [
          "carrierId"
        ],
        "properties": {
          "carrierId": {
            "type": "string",
            "minLength": 1,
            "maxLength": 100,
            "example": "C102"
          },
          "displayName": {
            "type": "string",
            "maxLength": 150,
            "example": "Deutsche Post"
          }
        }
      },
      "Category": {
        "type": "object",
        "required": [
          "categoryId",
          "displayName",
          "isLeaf"
        ],
        "properties": {
          "categoryId": {
            "description": "Channel category Id.",
            "type": "string",
            "minLength": 1,
            "maxLength": 512,
            "example": "4711"
          },
          "displayName": {
            "description": "Category display name.",
            "type": "string",
            "example": "Beer",
            "minLength": 1,
            "maxLength": 250
          },
          "listingAllowed": {
            "description": "Mark a categoryId as leaf. Only leaf categories can list offers.",
            "type": "boolean",
            "default": true
          },
          "parentCategoryId": {
            "description": "Parent category Id. If category is 0 the current category is considered as root category.",
            "type": "string",
            "minLength": 1,
            "maxLength": 512,
            "example": "2343"
          }
        }
      },
      "CategoryTree": {
        "type": "array",
        "items": {
          "$ref": "#/components/schemas/Category"
        }
      },
      "AttributeId": {
        "description": "AttributeId must be a category tree wide unique identifer.\n",
        "type": "string",
        "example": "12323",
        "minLength": 1,
        "maxLength": 512
      },
      "AllowedValue": {
        "type": "object",
        "required": [
          "value"
        ],
        "properties": {
          "value": {
            "description": "An enumeration to include in the set. The enumeration bust be string-based.\nExample: '1', 'green_l_st'\n",
            "type": "string",
            "maxLength": 1024,
            "minLength": 1
          },
          "display": {
            "description": "An optional alias for the enumeration, which will be shown in the GUI. If left empty, the value will be shown instead.\nExample: 'Red', 'Light Green + Striped'\n",
            "type": "string",
            "maxLength": 1024,
            "minLength": 1
          },
          "sort": {
            "description": "Specifies the order of values",
            "type": "integer",
            "default": 0
          }
        }
      },
      "Attribute": {
        "type": "object",
        "required": [
          "attributeId",
          "displayName"
        ],
        "properties": {
          "attributeId": {
            "$ref": "#/components/schemas/AttributeId"
          },
          "displayName": {
            "description": "Display name is used to display the attribute inside a User Interface.\n",
            "type": "string",
            "example": "Brand",
            "maxLength": 150
          },
          "isMultipleAllowed": {
            "description": "Define if there is more than one value allowed for this attribute.\n",
            "type": "boolean",
            "example": false,
            "default": false
          },
          "type": {
            "description": "Attribute type decribe which kind of data is expecet for a particular attribute.\n\n* Type **smalltext** is considerd a plain text any may not exceed more than 255 characters.\n* Type **text** is considerd plain text and may not exceed a maximum length more than 50.000 characters.\n* Type **htmltext** may be used for text where HTML Markup is allowed. The maximum lengh schould not exceed\nmore than 50.000 characters.\n* Type **date** must follow [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) standard with Timezone.\n* Type **enum** may provide data with enumValues property\n* Type **image** a attribute with an existing remote File uploaded using `POST /v1/seller/offer/file`\n* Type **document** a attribute with an existing remote File uploaded using `POST /v1/seller/offer/file`\n* Type **url** must match a URL Schema\n* Type **label** can be used as help text. Requires description to be set\n",
            "type": "string",
            "enum": [
              "smalltext",
              "htmltext",
              "text",
              "integer",
              "decimal",
              "enum",
              "date",
              "boolean",
              "image",
              "document",
              "url",
              "label"
            ],
            "example": "text",
            "default": "smalltext"
          },
          "values": {
            "description": "A set of possible choices for this specific attribute, in the form of a list of possible enumerations.\n",
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/AllowedValue"
            },
            "example": [
              {
                "value": "Beer"
              },
              {
                "value": "Tee",
                "display": "Wine"
              }
            ]
          },
          "attributeValueValidation": {
            "description": "Regular expression to validate attribute value\n",
            "type": "string",
            "example": "/^[0-9]{13}$/",
            "maxLength": 1024,
            "default": null
          },
          "conditionalMandatoryBy": {
            "description": "This property defines conditional mandatory settings\n",
            "type": "array",
            "nullable": true,
            "items": {
              "type": "object",
              "properties": {
                "attributeId": {
                  "$ref": "#/components/schemas/AttributeId"
                },
                "attributeValues": {
                  "type": "array",
                  "items": {
                    "type": "string",
                    "example": "High"
                  }
                }
              }
            }
          },
          "conditionalOptionalBy": {
            "description": "This property defines conditional optional settings\n",
            "type": "array",
            "nullable": true,
            "items": {
              "type": "object",
              "properties": {
                "attributeId": {
                  "$ref": "#/components/schemas/AttributeId"
                },
                "attributeValues": {
                  "type": "array",
                  "items": {
                    "type": "string",
                    "example": "No Frame"
                  }
                }
              }
            }
          },
          "required": {
            "type": "boolean",
            "example": true,
            "default": false
          },
          "recommended": {
            "description": "A Channel may recommend to have a attribute set when lisitng a offer on a certain markatplace to gain more\nvisibility and potential transactions.\n",
            "type": "boolean",
            "example": false,
            "default": false
          },
          "section": {
            "description": "Optinal attribute to assign a attribute to a specific section. A section can be used by a Seller Integration\nto show attributes grouped inside a identical section name.\n",
            "type": "string",
            "example": "Colors and Appearance",
            "default": null
          },
          "sectionPosition": {
            "description": "Section position is used to sort attributes in descending order inside a section. This property may be used by a Seller Integration to determine display sequence in a User Interface.",
            "type": "integer",
            "default": 0
          },
          "isRepeatableSubSection": {
            "description": "A repeatable subSection can be used to group related attributes together. Those related set of attributes is \nrepeatable as a group. When thoese attributes are transmitted to the SCX-Seller API as Channel Attributes they \nmust have the \"group\" property filled with a unique identifier. This attribute affect the subSection property.\nAll subsections with the same name must have the same value isRepeatableSubSection and musst not be mixed with\ndifferent settings.\n",
            "type": "boolean",
            "example": true,
            "default": false,
            "nullable": true
          },
          "subSection": {
            "description": "A sub section can be used to build a group of attributes inside a section.\n",
            "type": "string",
            "example": "Length",
            "default": null
          },
          "subSectionPosition": {
            "description": "Sub section position is used to sort attributes in descending order. This property may be used by a Seller\nIntegration to determine display sequence in a User Interface inside identicy **section**s\n",
            "type": "integer",
            "example": 0,
            "default": 0
          },
          "description": {
            "description": "Describe the purpose of an Attribute.\n",
            "type": "string",
            "example": null,
            "default": null
          },
          "isVariationDimension": {
            "type": "boolean",
            "example": true,
            "default": null
          },
          "enumValues": {
            "deprecated": true,
            "description": "(DEPRECATED - use values property instead)\nIf the attribte type equals to ENUM this propertie must be set.\n",
            "type": "array",
            "items": {
              "type": "string",
              "maxLength": 200,
              "example": "Blue"
            }
          }
        }
      },
      "AttributeList": {
        "type": "object",
        "properties": {
          "attributeList": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Attribute"
            }
          }
        }
      },
      "SellerAttributeList": {
        "type": "object",
        "properties": {
          "attributeListVersion": {
            "type": "string",
            "example": "2019060115430"
          },
          "sellerAttributeList": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "sellerId": {
                  "$ref": "#/components/schemas/SellerId"
                },
                "attributeList": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Attribute"
                  }
                }
              }
            }
          }
        }
      },
      "PriceType": {
        "type": "object",
        "required": [
          "priceTypeId",
          "displayName"
        ],
        "properties": {
          "priceTypeId": {
            "type": "string",
            "example": "B2C"
          },
          "displayName": {
            "type": "string",
            "example": "Standard Price"
          },
          "description": {
            "type": "string",
            "example": "B2C Price"
          }
        }
      },
      "SellerOrderShipping": {
        "type": "object",
        "required": [
          "sellerId",
          "orderId",
          "shippingComplete",
          "shippedAt",
          "shippingItems"
        ],
        "properties": {
          "sellerId": {
            "$ref": "#/components/schemas/SellerId"
          },
          "orderId": {
            "$ref": "#/components/schemas/ChannelOrderId"
          },
          "shippingComplete": {
            "description": "When shipping is completed set to \"true\".\n",
            "type": "boolean",
            "example": true
          },
          "shippingItems": {
            "type": "array",
            "required": [
              "carrier"
            ],
            "minItems": 1,
            "items": {
              "title": "OrderShippingPosition",
              "type": "object",
              "required": [
                "carrier"
              ],
              "properties": {
                "carrier": {
                  "type": "string",
                  "example": "DHL"
                },
                "trackingNumber": {
                  "description": "Optional URL provided by the merchant that allows customers/buyers to track their shipment. \nThis tracking URL enables customers to monitor the delivery status and location of their order \nduring the shipping process.\n",
                  "type": "string",
                  "example": "23435833543343222322"
                },
                "trackingUrl": {
                  "type": "string",
                  "example": "https://www.dhl.de/de/home/tracking.html?AWB=23435833543343222322"
                },
                "returnTracking": {
                  "description": "The return tracking number and carrier for the return process. Each orderItemId may have its own return\ntracking.\n",
                  "type": "object",
                  "nullable": true,
                  "required": [
                    "carrier",
                    "trackingNumber"
                  ],
                  "properties": {
                    "carrier": {
                      "type": "string",
                      "example": "DHL"
                    },
                    "trackingNumber": {
                      "type": "string",
                      "example": "432353833232443222322"
                    },
                    "trackingUrl": {
                      "description": "Optional URL provided by the merchant that allows customers/buyers to track their shipment. \nThis tracking URL enables customers to monitor the delivery status and location of their order \nduring the shipping process.\n",
                      "type": "string",
                      "example": "https://www.dhl.de/de/home/tracking.html?AWB=432353833232443222322"
                    }
                  }
                },
                "shippedAt": {
                  "type": "string",
                  "format": "date-time",
                  "example": "2019-01-13T12:00:00+00:00"
                },
                "orderItemIdList": {
                  "description": "Container to describe what items are included.\n",
                  "nullable": true,
                  "type": "array",
                  "minItems": 0,
                  "items": {
                    "title": "OrderShippingPositionItem",
                    "type": "object",
                    "required": [
                      "orderItemId",
                      "quantity"
                    ],
                    "properties": {
                      "orderItemId": {
                        "$ref": "#/components/schemas/OrderItemId"
                      },
                      "quantity": {
                        "oneOf": [
                          {
                            "type": "number",
                            "format": "float"
                          },
                          {
                            "type": "integer"
                          }
                        ]
                      }
                    }
                  }
                },
                "shippedFrom": {
                  "description": "The adress from where the shipment is sent.",
                  "type": "object",
                  "nullable": true,
                  "required": [
                    "country",
                    "city",
                    "postcode"
                  ],
                  "properties": {
                    "city": {
                      "type": "string",
                      "example": "Köln"
                    },
                    "country": {
                      "type": "string",
                      "example": "DE"
                    },
                    "postcode": {
                      "type": "string",
                      "example": "51107"
                    }
                  }
                }
              }
            }
          }
        }
      },
      "OrderPayment": {
        "type": "object",
        "required": [
          "sellerId",
          "orderId",
          "paymentComplete",
          "paidAt"
        ],
        "properties": {
          "sellerId": {
            "$ref": "#/components/schemas/SellerId"
          },
          "orderId": {
            "$ref": "#/components/schemas/ChannelOrderId"
          },
          "paymentComplete": {
            "type": "boolean",
            "example": true
          },
          "paidAt": {
            "type": "string",
            "format": "date-time",
            "example": "2019-01-16T13:00:00+01:00"
          }
        }
      },
      "OrderConfirm": {
        "title": "OrderConfirm",
        "type": "object",
        "required": [
          "sellerId",
          "orderId",
          "orderConfirmed"
        ],
        "properties": {
          "sellerId": {
            "$ref": "#/components/schemas/SellerId"
          },
          "orderId": {
            "type": "string",
            "example": "43523-43432-43532"
          },
          "orderAccepted": {
            "type": "boolean",
            "example": false
          },
          "reason": {
            "$ref": "#/components/schemas/CancelReason"
          }
        }
      },
      "SellerInvoiceMetaData": {
        "type": "object",
        "required": [
          "type",
          "sellerId",
          "orderId",
          "invoiceNumber"
        ],
        "properties": {
          "type": {
            "$ref": "#/components/schemas/InvoiceDocumentType"
          },
          "sellerId": {
            "$ref": "#/components/schemas/SellerId"
          },
          "orderId": {
            "$ref": "#/components/schemas/ChannelOrderId"
          },
          "invoiceNumber": {
            "type": "string",
            "minLength": 1,
            "maxLength": 256
          }
        }
      },
      "Condition": {
        "type": "string",
        "enum": [
          "ORIGINAL_PACKAGING",
          "MINT_CONDITION",
          "SLIGHTLY_USED",
          "HEAVILY_USED",
          "DAMAGED",
          "INCOMPLETE_DELIVERY",
          "FRAUD"
        ]
      },
      "ReturnReceivedOrderItem": {
        "type": "object",
        "required": [
          "condition",
          "acceptReturn",
          "requireReturnShipping",
          "orderItemId",
          "quantity",
          "returnReason"
        ],
        "properties": {
          "orderItemId": {
            "$ref": "#/components/schemas/OrderItemId"
          },
          "quantity": {
            "type": "string",
            "example": "1.0"
          },
          "returnReason": {
            "$ref": "#/components/schemas/ReturnReason"
          },
          "note": {
            "type": "string",
            "maxLength": 1024
          },
          "condition": {
            "$ref": "#/components/schemas/Condition"
          },
          "acceptReturn": {
            "type": "boolean",
            "example": true
          },
          "requireReturnShipping": {
            "type": "boolean",
            "example": true,
            "default": true
          }
        }
      },
      "ReturnReceived": {
        "type": "object",
        "required": [
          "sellerId",
          "orderId",
          "sellerReturnId",
          "orderItem"
        ],
        "properties": {
          "sellerId": {
            "$ref": "#/components/schemas/SellerId"
          },
          "orderId": {
            "$ref": "#/components/schemas/ChannelOrderId"
          },
          "sellerReturnId": {
            "$ref": "#/components/schemas/SellerReturnId"
          },
          "channelReturnId": {
            "$ref": "#/components/schemas/ChannelReturnId"
          },
          "orderItem": {
            "type": "array",
            "minItems": 1,
            "items": {
              "$ref": "#/components/schemas/ReturnReceivedOrderItem"
            }
          }
        }
      },
      "RefundReason": {
        "type": "string",
        "example": "NO_REASON",
        "enum": [
          "NO_REASON",
          "DEFECT",
          "WRONG_ITEM",
          "WRONG_SIZE",
          "TOO_LATE",
          "BAD_QUALITY",
          "OTHER"
        ]
      },
      "RefundOrderItem": {
        "title": "OrderItemRefund",
        "type": "object",
        "required": [
          "orderItemId",
          "quantity",
          "reason",
          "refund",
          "refundCurrency"
        ],
        "properties": {
          "orderItemId": {
            "$ref": "#/components/schemas/OrderItemId"
          },
          "quantity": {
            "type": "string",
            "example": "1.0"
          },
          "reason": {
            "$ref": "#/components/schemas/RefundReason"
          },
          "refund": {
            "type": "string",
            "example": "19.90"
          },
          "refundCurrency": {
            "type": "string",
            "example": "EUR"
          }
        }
      },
      "Refund": {
        "title": "OrderRefund",
        "type": "object",
        "required": [
          "refundId",
          "sellerId",
          "orderId",
          "orderItem"
        ],
        "properties": {
          "refundId": {
            "$ref": "#/components/schemas/RefundId"
          },
          "sellerId": {
            "$ref": "#/components/schemas/SellerId"
          },
          "orderId": {
            "$ref": "#/components/schemas/ChannelOrderId"
          },
          "orderItem": {
            "type": "array",
            "minItems": 1,
            "items": {
              "$ref": "#/components/schemas/RefundOrderItem"
            }
          }
        }
      },
      "ReportRequest": {
        "title": "ReportRequest",
        "type": "object",
        "properties": {
          "sellerId": {
            "$ref": "#/components/schemas/SellerId"
          },
          "reportType": {
            "$ref": "#/components/schemas/ReportType"
          },
          "options": {
            "type": "object",
            "properties": {
              "ResultsAsChannelEvent": {
                "type": "boolean",
                "description": "If true, the report will be generated as a channel event.\nThis means that the report will be sent to the seller via the channel event system.\nIf false, the report will be generated as a file.\nThis means that the report will be available for download via the report endpoint.\n"
              }
            }
          },
          "startDate": {
            "type": "string",
            "format": "date",
            "nullable": true
          },
          "endDate": {
            "type": "string",
            "format": "date",
            "nullable": true
          }
        },
        "required": [
          "sellerId",
          "reportType"
        ]
      },
      "AttachmentData": {
        "type": "object",
        "required": [
          "sellerId",
          "ticketId",
          "filename"
        ],
        "properties": {
          "sellerId": {
            "$ref": "#/components/schemas/SellerId"
          },
          "ticketId": {
            "$ref": "#/components/schemas/TicketId"
          },
          "filename": {
            "type": "string",
            "pattern": "^\\w+\\.\\w{1,10}$",
            "description": "Original Filename",
            "example": "product.png"
          }
        }
      },
      "TicketAttachmentRequest": {
        "type": "object",
        "required": [
          "attachmentData",
          "document"
        ],
        "properties": {
          "attachmentData": {
            "description": "Attachment meta data as JSON",
            "type": "object",
            "allOf": [
              {
                "$ref": "#/components/schemas/AttachmentData"
              }
            ]
          },
          "attachment": {
            "description": "File Attachment as binary data must have a maxium size of 16 MB.\n\nAllowed Content-Types are\n* text/plain\n* application/pdf\n* application/vnd.openxmlformats-officedocument.wordprocessingml.document\n* application/vnd.openxmlformats-officedocument.spreadsheetml.sheet\n* application/vnd.ms-excel\n* application/msword\n* image/*\n",
            "type": "string",
            "format": "binary"
          }
        }
      },
      "TicketReply": {
        "title": "TicketReply",
        "type": "object",
        "required": [
          "sellerId",
          "ticketId",
          "createdAt",
          "from",
          "message"
        ],
        "properties": {
          "sellerId": {
            "$ref": "#/components/schemas/SellerId"
          },
          "ticketId": {
            "$ref": "#/components/schemas/TicketId"
          },
          "replyRequested": {
            "type": "boolean",
            "example": true,
            "default": true
          },
          "createdAt": {
            "type": "string",
            "format": "date-time"
          },
          "from": {
            "$ref": "#/components/schemas/TicketFrom"
          },
          "message": {
            "type": "string",
            "minLength": 1,
            "maxLength": 1024,
            "example": "Open the pod bay doors HAL."
          },
          "attachment": {
            "type": "array",
            "minItems": 0,
            "maxItems": 10,
            "items": {
              "$ref": "#/components/schemas/TicketAttachment"
            }
          }
        }
      }
    },
    "securitySchemes": {
      "SellerAuth": {
        "description": "Bearer JWT issued to a seller after they sign up for a JTL-Scx subscription via the JTL\nCustomer Center. Usage format: `Bearer <JWT>`.\n",
        "type": "http",
        "scheme": "bearer",
        "bearerFormat": "JWT"
      },
      "JTLoAuth": {
        "description": "Bearer JWT used for JTL OAuth-authenticated requests. Issued by the JTL Customer Center\nas part of a JTL-Scx subscription. Usage format: `Bearer <JWT>`.\n",
        "type": "http",
        "scheme": "bearer",
        "bearerFormat": "JWT"
      }
    },
    "examples": {
      "ChannelDataChangedExample": {
        "summary": "Channel data has changed",
        "value": {
          "eventList": [
            {
              "id": "5f56353a5d140073454e9",
              "createdAt": "2020-08-06T06:40:18+0000",
              "type": "Channel:ChannelDataChanged",
              "event": {
                "channel": "MYBESTDEALDE"
              }
            }
          ]
        }
      },
      "OrderNewExample": {
        "summary": "New Channel Order",
        "value": {
          "eventList": [
            {
              "id": "5f2ba5d28e553b1f32601684",
              "createdAt": "2020-08-06T06:40:18+0000",
              "type": "Channel:Order",
              "event": {
                "channel": "MYBESTDEALDE",
                "sellerId": "SRL5f2ba5cdeb661",
                "orderStatus": "CREATED",
                "orderId": "2c2cc2dd-559f-41f2-b4a3-69d61b54f5ce",
                "purchasedAt": "2020-08-06T03:40:18+0000",
                "lastChangedAt": "2020-08-06T03:45:18+0000",
                "currency": "EUR",
                "orderItem": [
                  {
                    "type": "ITEM",
                    "orderItemId": "1",
                    "grossPrice": "12.40",
                    "taxPercent": "19",
                    "sku": "1234-D",
                    "estimatedShippingDate": "2020-08-07T00:00:00+0000",
                    "estimatedDeliveryDate": "2020-08-09T00:00:00+0000",
                    "offerId": 1337,
                    "quantity": "2.0",
                    "title": "Headphones",
                    "total": "19"
                  },
                  {
                    "type": "SHIPPING",
                    "grossPrice": "1.48",
                    "taxPercent": "62.10",
                    "shippingGroup": "DHL",
                    "orderItemId": "2"
                  },
                  {
                    "type": "PAYMENT",
                    "grossPrice": "0.0",
                    "taxPercent": "62.10980132877943",
                    "note": "Because I said so",
                    "orderItemId": "a valid order item ID"
                  }
                ],
                "billingAddress": {
                  "firstName": "John",
                  "lastName": "Doe",
                  "gender": "male",
                  "companyName": "JTL-Software GmbH",
                  "street": "Leyboldstr",
                  "houseNumber": "14",
                  "postcode": "51379",
                  "city": "Köln",
                  "phone": "0123456789",
                  "country": "DE"
                },
                "shippingAddress": {
                  "firstName": "John",
                  "lastName": "Doe",
                  "gender": "male",
                  "companyName": "JTL-Software GmbH",
                  "street": "Leyboldstr",
                  "houseNumber": "14",
                  "postcode": "51379",
                  "city": "Köln",
                  "phone": "0123456789",
                  "country": "DE"
                },
                "note": "Order Example"
              }
            }
          ]
        }
      },
      "OrderUpdateExample": {
        "summary": "Update existing Channel Order",
        "value": {
          "eventList": [
            {
              "id": "5f2bd6d28e553b1f32601684",
              "createdAt": "2020-08-06T06:40:18+0000",
              "type": "Channel:Order.StatusUpdate",
              "event": {
                "channel": "MYBESTDEALDE",
                "sellerId": "SRL5f2ba5cdeb661",
                "orderId": "2c2cc2dd-559f-41f2-b4a3-69d61b54f5ce",
                "orderStatus": "SHIPPED"
              }
            }
          ]
        }
      },
      "OrderAddressUpdateExample": {
        "summary": "Order Address Update",
        "value": {
          "eventList": [
            {
              "id": "5f2ba5d28e553b1f32601684",
              "createdAt": "2020-08-06T06:40:18+0000",
              "type": "Channel:Order.AddressUpdate",
              "event": {
                "channel": "MYBESTDEALDE",
                "sellerId": "SRL5f2ba5cdeb661",
                "orderId": "2c2cc2dd-559f-41f2-b4a3-69d61b54f5ce",
                "billingAddress": {
                  "firstName": "John",
                  "lastName": "Doe",
                  "gender": "male",
                  "companyName": "JTL-Software GmbH",
                  "street": "Leyboldstr",
                  "houseNumber": "14",
                  "postcode": "51379",
                  "city": "Köln",
                  "phone": "0123456789",
                  "country": "DE"
                },
                "shippingAddress": {
                  "firstName": "John",
                  "lastName": "Doe",
                  "gender": "male",
                  "companyName": "JTL-Software GmbH",
                  "street": "Leyboldstr",
                  "houseNumber": "14",
                  "postcode": "51379",
                  "city": "Köln",
                  "phone": "0123456789",
                  "country": "DE"
                },
                "buyer": {
                  "email": "example@jtl-software.com"
                }
              }
            },
            {
              "id": "5f2ba5d28e43263f32601684",
              "createdAt": "2020-08-06T06:40:18+0000",
              "type": "Channel:Order",
              "event": {
                "channel": "MYBESTDEALDE",
                "sellerId": "SRL5f2ba5cdeb661",
                "orderId": "2c2cc2dd-5462-41f2-b4a3-69d61b54f5ce",
                "shippingAddress": {
                  "firstName": "John",
                  "lastName": "Doe",
                  "gender": "male",
                  "companyName": "JTL-Software GmbH",
                  "street": "Leyboldstr",
                  "houseNumber": "14",
                  "postcode": "51379",
                  "city": "Köln",
                  "phone": "0123456789",
                  "country": "DE"
                }
              }
            }
          ]
        }
      },
      "OrderCancellationRequestAcceptExample": {
        "summary": "Channel accept a Order Cancellation",
        "value": {
          "eventList": [
            {
              "id": "5f5639bc09f24d14007784e9",
              "createdAt": "2020-08-06T06:40:18+0000",
              "type": "Channel:Order.Cancellation.Accepted",
              "event": {
                "channel": "MYBESTDEALDE",
                "sellerId": "123",
                "orderCancellationRequestId": "121"
              }
            }
          ]
        }
      },
      "OrderCancellationRequestDeniedExample": {
        "summary": "Channel deny a Order Cancellation",
        "value": {
          "eventList": [
            {
              "id": "5f5639bc09f24d14007784e9",
              "createdAt": "2020-08-06T06:40:18+0000",
              "type": "Channel:Order.Cancellation.Denied",
              "event": {
                "channel": "MYBESTDEALDE",
                "sellerId": "123",
                "orderCancellationRequestId": "121",
                "reason": "Order already shipped"
              }
            }
          ]
        }
      },
      "ChannelEventNotificationExample": {
        "summary": "Channel Event Notification",
        "value": {
          "eventList": [
            {
              "id": "5f5639bc09f24d140073454e9",
              "createdAt": "2020-08-06T06:40:18+0000",
              "type": "Channel:Notification",
              "event": {
                "channel": "MYBESTDEALDE",
                "sellerId": "123",
                "message": "Something happend (Example 1)",
                "severity": "ERROR",
                "reference": {
                  "id": "1-UUID-899",
                  "type": "OFFER"
                }
              }
            },
            {
              "id": "5f5639bc09f24d1400734543r",
              "createdAt": "2020-08-06T06:40:18+0000",
              "type": "Channel:Notification",
              "event": {
                "channel": "MYBESTDEALDE",
                "sellerId": "123",
                "message": "Something is wrong (Example 2)",
                "severity": "WARNING",
                "reference": {
                  "id": "12443",
                  "type": "ORDERITEMID"
                }
              }
            },
            {
              "id": "5f5639bc09f24d1400734543r",
              "createdAt": "2020-08-06T06:40:18+0000",
              "type": "Channel:Notification",
              "event": {
                "channel": "MYBESTDEALDE",
                "sellerId": "123",
                "message": "Some Information (Example 3)",
                "severity": "INFO",
                "reference": null
              }
            }
          ]
        }
      },
      "OfferListingInProgressExample": {
        "summary": "A Offer Listing is marked as in progress",
        "value": {
          "eventList": [
            {
              "id": "5f56394de4d140073454e9",
              "createdAt": "2020-08-06T06:40:18+0000",
              "type": "Channel:Offer.ListingInProgress",
              "event": {
                "channel": "MYBESTDEALDE",
                "sellerId": "123",
                "offerId": 32252,
                "startedAt": "2020-08-06T06:40:18+0000"
              }
            }
          ]
        }
      },
      "OfferListingSuccessfulExample": {
        "summary": "A Offer is Listed on Channel",
        "value": {
          "eventList": [
            {
              "id": "5f56394de4d140073454e9",
              "createdAt": "2020-08-06T06:40:18+0000",
              "type": "Channel:Offer.ListingSuccessful",
              "event": {
                "channel": "MYBESTDEALDE",
                "sellerId": "123",
                "offerId": 32252,
                "channelOfferId": "A43342",
                "listedAt": "2020-08-06T06:40:18+0000",
                "listingUrl": "https://www.mybestdeals.de/A43342"
              }
            }
          ]
        }
      },
      "OfferListingFailedExample": {
        "summary": "A Offer Listing failed",
        "value": {
          "eventList": [
            {
              "id": "5f56394de4d140073454e9",
              "createdAt": "2020-08-06T06:40:18+0000",
              "type": "Channel:Offer.ListingFailed",
              "event": {
                "channel": "MYBESTDEALDE",
                "sellerId": "123",
                "offerId": 32252,
                "channelOfferId": "A43342",
                "failedAt": "2020-08-06T06:40:18+0000",
                "errorList": [
                  {
                    "code": "CHN500",
                    "message": "Global attribute color not found",
                    "longMessage": "Attribute \"color\" is missing"
                  },
                  {
                    "code": "CHN501",
                    "message": "Seller attribute main_picture not found",
                    "longMessage": "An offer needs at least one picture"
                  }
                ]
              }
            }
          ]
        }
      },
      "ReportProcessingFinishedExample": {
        "summary": "Report Processing Finished",
        "value": {
          "eventList": [
            {
              "id": "5f56353a5d140073454e9",
              "createdAt": "2020-08-06T06:40:18+0000",
              "type": "Channel:Report.ProcessingFinished",
              "event": {
                "channel": "MYBESTDEALDE",
                "sellerId": "123",
                "reportId": "a2f0ab31-95c1-4b54-b5a2-6bd95568c01c",
                "reportType": "SELLER_INVENTORY",
                "resource": "/seller/report/06c4021e-d51f-4ad9-bd70-611191c69b3b"
              }
            }
          ]
        }
      },
      "MetaDataChangedExample": {
        "summary": "Channel Meta Data has changed",
        "value": {
          "eventList": [
            {
              "id": "5f56353a5d140073454e9",
              "createdAt": "2020-08-06T06:40:18+0000",
              "type": "Channel:MetaDataChanged",
              "event": {
                "channel": "MYBESTDEALDE",
                "type": "CATEGORY",
                "reportId": "a2f0ab31-95c1-4b54-b5a2-6bd95568c01c",
                "resource": "/seller/meta/MYBESTDEALDE/categories"
              }
            }
          ]
        }
      }
    }
  }
}