{
  "openapi": "3.0.1",
  "info": {
    "title": "Marketplace Catalog Management",
    "version": "9.1.20.0",
    "description": "<p>Create and administer marketplace catalog management resources.</p> <p>Please note that these APIs are introduced in HCL Commerce V9.1.11.</p> ",
    "x-introduced": "9.1.11.0"
  },
  "servers": [
    {
      "url": "https://{hostname}:{port}/rest/admin/v2",
      "variables": {
        "port": {
          "default": "443",
          "enum": [
            "443",
            "8000"
          ]
        },
        "hostname": {
          "default": "localhost",
          "enum": [
            "localhost",
            "test.hostname"
          ]
        }
      }
    }
  ],
  "paths": {
    "/marketplace-catalog-downloads": {
      "post": {
        "summary": "Initiate catalog download process.",
        "description": "Initiate catalog download process. Supports download of products and attributes for a store and seller organization.",
        "operationId": "createCatalogDownloadRequest",
        "parameters": [
          {
            "name": "storeId",
            "in": "query",
            "description": "The store ID",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          }
        ],
        "requestBody": {
          "description": "Specify sellerId and objectType in request body. One can also filter by langId and parentGroupIdentifier.",
          "content": {
            "application/json": {
              "schema": {
                "oneOf": [
                  {
                    "$ref": "#/components/schemas/catalogProductsDownload"
                  },
                  {
                    "$ref": "#/components/schemas/catalogAttributesDownload"
                  }
                ]
              },
              "examples": {
                "products": {
                  "summary": "Products download",
                  "value": {
                    "storeId": 1,
                    "sellerId": 700000001,
                    "objectType": "Product",
                    "currency": "USD",
                    "langId": "-1",
                    "parentGroupIdentifier": "Dresses"
                  }
                },
                "attributes": {
                  "summary": "Attributes download",
                  "value": {
                    "storeId": 1,
                    "sellerId": 700000001,
                    "objectType": "Attribute",
                    "langId": "-1"
                  }
                }
              }
            }
          },
          "required": true
        },
        "responses": {
          "202": {
            "description": "The request succeeded, and a new resource was created.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/IDResponseBase"
                }
              }
            },
            "headers": {
              "Location": {
                "description": "The URI of the download request.",
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "400": {
            "description": "Bad request. The request could not be understood by the server due to malformed syntax.",
            "content": {}
          },
          "401": {
            "description": "Not authenticated. The user session is not valid.",
            "content": {}
          },
          "403": {
            "description": "The user is not authorized to perform the specified request.",
            "content": {}
          },
          "404": {
            "description": "The specified resource could not be found.",
            "content": {}
          },
          "500": {
            "description": "Internal server error. For details, see the server log files.",
            "content": {}
          }
        },
        "tags": [
          "Marketplace Catalog Download"
        ]
      }
    },
    "/marketplace-catalog-downloads/{id}/status": {
      "get": {
        "summary": "Get the status of a catalog download request.",
        "description": "Get the status of a catalog download request.",
        "operationId": "getCatalogDownloadRequestStatus",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The catalog download request ID",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "The request was successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/catalogDownloadStatusResponse"
                }
              }
            }
          },
          "400": {
            "description": "Bad request. The request could not be understood by the server due to malformed syntax.",
            "content": {}
          },
          "401": {
            "description": "Not authenticated. The user session is not valid.",
            "content": {}
          },
          "403": {
            "description": "The user is not authorized to perform the specified request.",
            "content": {}
          },
          "404": {
            "description": "The specified resource could not be found.",
            "content": {}
          },
          "500": {
            "description": "Internal server error. For details, see the server log files.",
            "content": {}
          }
        },
        "tags": [
          "Marketplace Catalog Download"
        ]
      }
    },
    "/marketplace-catalog-downloads/{id}": {
      "get": {
        "summary": "Get the downloaded catalog.",
        "description": "Get downloaded catalog.",
        "operationId": "getCatalogDownloadRequest",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The catalog download request ID",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "The request was successful.",
            "content": {
              "application/octet-stream": {
                "schema": {
                  "type": "string",
                  "format": "binary"
                }
              }
            }
          },
          "400": {
            "description": "Bad request. The request could not be understood by the server due to malformed syntax.",
            "content": {}
          },
          "401": {
            "description": "Not authenticated. The user session is not valid.",
            "content": {}
          },
          "403": {
            "description": "The user is not authorized to perform the specified request.",
            "content": {}
          },
          "404": {
            "description": "The specified resource could not be found.",
            "content": {}
          },
          "500": {
            "description": "Internal server error. For details, see the server log files.",
            "content": {}
          }
        },
        "tags": [
          "Marketplace Catalog Download"
        ]
      }
    },
    "/marketplace-catalog-uploads": {
      "get": {
        "summary": "Get catalog upload requests.",
        "description": "Get catalog upload requests for a store and seller organization.",
        "operationId": "getCatalogUploadRequests",
        "parameters": [
          {
            "name": "sellerId",
            "in": "query",
            "description": "The seller organization ID",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "storeId",
            "in": "query",
            "description": "The store ID",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "status",
            "in": "query",
            "description": "The upload status",
            "style": "form",
            "explode": false,
            "required": false,
            "schema": {
              "type": "array",
              "items": {
                "type": "string",
                "enum": [
                  "WORKING",
                  "READY_FOR_APPROVAL",
                  "APPROVED",
                  "READY_TO_COMMIT",
                  "COMPLETE",
                  "COMMIT_FAILED",
                  "COMMIT_IN_PROGRESS",
                  "COMMITTED",
                  "CANCELED",
                  "REJECTED",
                  "CANCELED_BY_SELLER"
                ]
              }
            }
          },
          {
            "name": "searchString",
            "in": "query",
            "description": "Limits the results to those that match the specified search string.",
            "required": false,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "userId",
            "in": "query",
            "description": "Limits the results to those that match the specified user ID.",
            "required": false,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "sort",
            "in": "query",
            "description": "The comma-separated set of properties that control the order of the listed items. Properties can be prefixed by either (-) to sort in descending order, or (+) to sort in ascending order. By default, properties are sorted in ascending order. For example, sort=commitDate will order the items based on the commitDate value in ascending order.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "offset",
            "in": "query",
            "description": "The position within the resulting dataset where the query begins returning item records. If the offset is \"5\", the records that returned begin with the sixth record that matches the query parameters. If the offset is \"0\", the records that are returned begin with the first record that matches the query parameters.",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 0
            }
          },
          {
            "name": "limit",
            "in": "query",
            "description": "The maximum number of records to return.",
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "The request was successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/catalogUploadCollection"
                }
              },
              "application/xhtml+xml": {
                "schema": {
                  "$ref": "#/components/schemas/catalogUploadCollection"
                }
              }
            }
          },
          "400": {
            "description": "Bad request. The request could not be understood by the server due to malformed syntax.",
            "content": {}
          },
          "401": {
            "description": "Not authenticated. The user session is not valid.",
            "content": {}
          },
          "403": {
            "description": "The user is not authorized to perform the specified request.",
            "content": {}
          },
          "404": {
            "description": "The specified resource could not be found.",
            "content": {}
          },
          "500": {
            "description": "Internal server error. For details, see the server log files.",
            "content": {}
          }
        },
        "tags": [
          "Marketplace Catalog Upload"
        ]
      },
      "post": {
        "summary": "Initiate catalog upload request.",
        "description": "Initiate catalog upload request.",
        "operationId": "createCatalogUploadRequest",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/catalogUploadCreateRequest"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "The request succeeded, and a new resource was created.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/IDResponseBase"
                }
              }
            },
            "headers": {
              "Location": {
                "description": "The URI of the upload request.",
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "400": {
            "description": "Bad request. The request could not be understood by the server due to malformed syntax.",
            "content": {}
          },
          "401": {
            "description": "Not authenticated. The user session is not valid.",
            "content": {}
          },
          "403": {
            "description": "The user is not authorized to perform the specified request.",
            "content": {}
          },
          "404": {
            "description": "The specified resource could not be found.",
            "content": {}
          },
          "500": {
            "description": "Internal server error. For details, see the server log files.",
            "content": {}
          }
        },
        "tags": [
          "Marketplace Catalog Upload"
        ]
      }
    },
    "/marketplace-catalog-uploads/{id}/comments": {
      "get": {
        "summary": "Get comments for the catalog upload request.",
        "description": "Get comments for the catalog upload request.",
        "operationId": "getCatalogUploadRequestComments",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The catalog upload request ID.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "limit",
            "in": "query",
            "description": "The maximum number of records to return.",
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "offset",
            "in": "query",
            "description": "The position within the resulting dataset where the query begins returning item records. If the offset is \"5\", the records that returned begin with the sixth record that matches the query parameters. If the offset is \"0\", the records that are returned begin with the first record that matches the query parameters.",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 0
            }
          },
          {
            "name": "userId",
            "in": "query",
            "description": "Limits the results to those that match the specified user ID.",
            "required": false,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "sort",
            "in": "query",
            "description": "The comma-separated set of properties that control the order of the listed items. Properties can be prefixed by either (-) to sort in descending order, or (+) to sort in ascending order. By default, properties are sorted in ascending order. For example, sort=createDate will order the items based on the createDate value in ascending order.",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "The request was successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/commentCollection"
                }
              },
              "application/xhtml+xml": {
                "schema": {
                  "$ref": "#/components/schemas/commentCollection"
                }
              }
            }
          },
          "400": {
            "description": "Bad request. The request could not be understood by the server due to malformed syntax.",
            "content": {}
          },
          "401": {
            "description": "Not authenticated. The user session is not valid.",
            "content": {}
          },
          "403": {
            "description": "The user is not authorized to perform the specified request.",
            "content": {}
          },
          "404": {
            "description": "The specified resource could not be found.",
            "content": {}
          },
          "500": {
            "description": "Internal server error. For details, see the server log files.",
            "content": {}
          }
        },
        "tags": [
          "Marketplace Catalog Upload"
        ]
      },
      "post": {
        "summary": "Add comment for the catalog upload request.",
        "description": "Add comment for the catalog upload request.",
        "operationId": "createCatalogUploadCommentsRequest",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The catalog upload request ID.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/comment"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "The request succeeded, and a new resource was created.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/commentResponseCollection"
                }
              }
            }
          },
          "400": {
            "description": "Bad request. The request could not be understood by the server due to malformed syntax.",
            "content": {}
          },
          "401": {
            "description": "Not authenticated. The user session is not valid.",
            "content": {}
          },
          "403": {
            "description": "The user is not authorized to perform the specified request.",
            "content": {}
          },
          "404": {
            "description": "The specified resource could not be found.",
            "content": {}
          },
          "500": {
            "description": "Internal server error. For details, see the server log files.",
            "content": {}
          }
        },
        "tags": [
          "Marketplace Catalog Upload"
        ]
      }
    },
    "/marketplace-catalog-uploads/{id}": {
      "get": {
        "summary": "Get catalog upload request information.",
        "description": "Get existing catalog upload request.",
        "operationId": "getCatalogUploadRequestById",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The catalog upload request ID",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "The request was successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/catalogUpload"
                }
              },
              "application/xhtml+xml": {
                "schema": {
                  "$ref": "#/components/schemas/catalogUpload"
                }
              }
            }
          },
          "400": {
            "description": "Bad request. The request could not be understood by the server due to malformed syntax.",
            "content": {}
          },
          "401": {
            "description": "Not authenticated. The user session is not valid.",
            "content": {}
          },
          "403": {
            "description": "The user is not authorized to perform the specified request.",
            "content": {}
          },
          "404": {
            "description": "The specified resource could not be found.",
            "content": {}
          },
          "500": {
            "description": "Internal server error. For details, see the server log files.",
            "content": {}
          }
        },
        "tags": [
          "Marketplace Catalog Upload"
        ]
      },
      "patch": {
        "summary": "Update existing catalog upload request.",
        "description": "Update existing catalog upload request.",
        "operationId": "updateCatalogUploadRequest",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The catalog upload request ID",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/catalogUploadUpdateRequest"
              }
            }
          }
        },
        "responses": {
          "204": {
            "description": "The request is successful.",
            "content": {}
          },
          "400": {
            "description": "Bad request. The request could not be understood by the server due to malformed syntax.",
            "content": {}
          },
          "401": {
            "description": "Not authenticated. The user session is not valid.",
            "content": {}
          },
          "403": {
            "description": "The user is not authorized to perform the specified request.",
            "content": {}
          },
          "404": {
            "description": "The specified resource could not be found.",
            "content": {}
          },
          "500": {
            "description": "Internal server error. For details, see the server log files.",
            "content": {}
          }
        },
        "tags": [
          "Marketplace Catalog Upload"
        ]
      },
      "delete": {
        "summary": "Cancels catalog upload request.",
        "description": "Cancels catalog upload request.",
        "operationId": "cancelCatalogUploadRequest",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The catalog upload request ID",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "204": {
            "description": "The request was successful."
          },
          "400": {
            "description": "Bad request. The request could not be understood by the server due to malformed syntax.",
            "content": {}
          },
          "401": {
            "description": "Not authenticated. The user session is not valid.",
            "content": {}
          },
          "403": {
            "description": "The user is not authorized to perform the specified request.",
            "content": {}
          },
          "404": {
            "description": "The specified resource could not be found.",
            "content": {}
          },
          "500": {
            "description": "Internal server error. For details, see the server log files.",
            "content": {}
          }
        },
        "tags": [
          "Marketplace Catalog Upload"
        ]
      }
    },
    "/marketplace-catalog-uploads/{id}/files": {
      "get": {
        "summary": "Get list of files associated with catalog upload request.",
        "description": "Get list of files associated with catalog upload request.",
        "operationId": "getFilesInCatalogUploadRequest",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The catalog upload request ID",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "status",
            "in": "query",
            "description": "The upload status",
            "style": "form",
            "explode": false,
            "required": false,
            "schema": {
              "type": "array",
              "items": {
                "type": "string",
                "enum": [
                  "NEW",
                  "PROCESSING",
                  "COMPLETE",
                  "FAILED",
                  "CANCELED"
                ]
              }
            }
          },
          {
            "name": "limit",
            "in": "query",
            "description": "The maximum number of records to return.",
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "offset",
            "in": "query",
            "description": "The position within the resulting dataset where the query begins returning item records. If the offset is \"5\", the records that returned begin with the sixth record that matches the query parameters. If the offset is \"0\", the records that are returned begin with the first record that matches the query parameters.",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 0
            }
          },
          {
            "name": "userId",
            "in": "query",
            "description": "Limits the results to those that match the specified user ID.",
            "required": false,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "sort",
            "in": "query",
            "description": "The comma-separated set of properties that control the order of the listed items. Properties can be prefixed by either (-) to sort in descending order, or (+) to sort in ascending order. By default, properties are sorted in ascending order. For example, sort=status will order the items based on the status value in ascending order.",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "The request was successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/catalogFileCollection"
                }
              }
            }
          },
          "400": {
            "description": "Bad request. The request could not be understood by the server due to malformed syntax.",
            "content": {}
          },
          "401": {
            "description": "Not authenticated. The user session is not valid.",
            "content": {}
          },
          "403": {
            "description": "The user is not authorized to perform the specified request.",
            "content": {}
          },
          "404": {
            "description": "The specified resource could not be found.",
            "content": {}
          },
          "500": {
            "description": "Internal server error. For details, see the server log files.",
            "content": {}
          }
        },
        "tags": [
          "Marketplace Catalog Upload"
        ]
      },
      "post": {
        "summary": "Upload file in catalog upload request.",
        "description": "Upload file in catalog upload request.",
        "operationId": "uploadFileInCatalogUploadRequest",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The catalog upload request ID",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "characterSet",
            "in": "query",
            "description": "The encoding of the file to be uploaded.",
            "required": false,
            "schema": {
              "type": "string",
              "default": "UTF-8"
            }
          },
          {
            "name": "currency",
            "in": "query",
            "description": "The currency.",
            "required": false,
            "schema": {
              "type": "string",
              "example": "USD"
            }
          },
          {
            "name": "languageId",
            "in": "query",
            "description": "The language ID.",
            "required": false,
            "schema": {
              "type": "string",
              "example": -1
            }
          }
        ],
        "requestBody": {
          "content": {
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "properties": {
                  "UpLoadedFile": {
                    "type": "string",
                    "format": "binary"
                  }
                }
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "The request is accepted.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/FileIDResponse"
                }
              }
            },
            "headers": {
              "Location": {
                "description": "The URI of the file uploaded.",
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "400": {
            "description": "Bad request. The request could not be understood by the server due to malformed syntax.",
            "content": {}
          },
          "401": {
            "description": "Not authenticated. The user session is not valid.",
            "content": {}
          },
          "403": {
            "description": "The user is not authorized to perform the specified request.",
            "content": {}
          },
          "404": {
            "description": "The specified resource could not be found.",
            "content": {}
          },
          "500": {
            "description": "Internal server error. For details, see the server log files.",
            "content": {}
          }
        },
        "tags": [
          "Marketplace Catalog Upload"
        ]
      }
    },
    "/marketplace-catalog-uploads/{id}/files/{fileId}": {
      "get": {
        "summary": "Get a file associated with catalog upload request.",
        "description": "Get a file associated with catalog upload request.",
        "operationId": "getFileInCatalogUploadRequest",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The catalog upload request ID",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "fileId",
            "in": "path",
            "description": "The file ID",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "The request was successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/catalogFile"
                }
              }
            }
          },
          "400": {
            "description": "Bad request. The request could not be understood by the server due to malformed syntax.",
            "content": {}
          },
          "401": {
            "description": "Not authenticated. The user session is not valid.",
            "content": {}
          },
          "403": {
            "description": "The user is not authorized to perform the specified request.",
            "content": {}
          },
          "404": {
            "description": "The specified resource could not be found.",
            "content": {}
          },
          "500": {
            "description": "Internal server error. For details, see the server log files.",
            "content": {}
          }
        },
        "tags": [
          "Marketplace Catalog Upload"
        ]
      }
    },
    "/marketplace-catalog-uploads/{id}/approve": {
      "post": {
        "summary": "Approve catalog upload request",
        "description": "Approve catalog upload request.",
        "operationId": "approveCatalogUploadRequest",
        "x-introduced": "9.1.12.0",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The catalog upload request ID",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "The request is accepted.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/approveResponseCollection"
                }
              }
            }
          },
          "400": {
            "description": "Bad request. The request could not be understood by the server due to malformed syntax.",
            "content": {}
          },
          "401": {
            "description": "Not authenticated. The user session is not valid.",
            "content": {}
          },
          "403": {
            "description": "The user is not authorized to perform the specified request.",
            "content": {}
          },
          "404": {
            "description": "The specified resource could not be found.",
            "content": {}
          },
          "500": {
            "description": "Internal server error. For details, see the server log files.",
            "content": {}
          }
        },
        "tags": [
          "Marketplace Catalog Upload"
        ]
      }
    },
    "/marketplace-catalog-uploads/{id}/reject": {
      "post": {
        "summary": "Reject catalog upload request",
        "description": "Reject catalog upload request.",
        "operationId": "rejectCatalogUploadRequest",
        "x-introduced": "9.1.12.0",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The catalog upload request ID",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "The request is accepted.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/rejectResponseCollection"
                }
              }
            }
          },
          "400": {
            "description": "Bad request. The request could not be understood by the server due to malformed syntax.",
            "content": {}
          },
          "401": {
            "description": "Not authenticated. The user session is not valid.",
            "content": {}
          },
          "403": {
            "description": "The user is not authorized to perform the specified request.",
            "content": {}
          },
          "404": {
            "description": "The specified resource could not be found.",
            "content": {}
          },
          "500": {
            "description": "Internal server error. For details, see the server log files.",
            "content": {}
          }
        },
        "tags": [
          "Marketplace Catalog Upload"
        ]
      }
    },
    "/marketplace-catalog-uploads/{id}/submit": {
      "post": {
        "summary": "Submit catalog upload request",
        "description": "Submit catalog upload request.",
        "operationId": "submitCatalogUploadRequest",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The catalog upload request ID",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "202": {
            "description": "The request is accepted.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/submitResponseCollection"
                }
              }
            }
          },
          "400": {
            "description": "Bad request. The request could not be understood by the server due to malformed syntax.",
            "content": {}
          },
          "401": {
            "description": "Not authenticated. The user session is not valid.",
            "content": {}
          },
          "403": {
            "description": "The user is not authorized to perform the specified request.",
            "content": {}
          },
          "404": {
            "description": "The specified resource could not be found.",
            "content": {}
          },
          "500": {
            "description": "Internal server error. For details, see the server log files.",
            "content": {}
          }
        },
        "tags": [
          "Marketplace Catalog Upload"
        ]
      }
    },
    "/marketplace-catalog-uploads/{id}/preview-token": {
      "post": {
        "summary": "Create a preview token.",
        "description": "Create a token for previewing the catalog changes.",
        "operationId": "createPreviewToken",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The catalog upload request ID",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "storeId",
            "in": "query",
            "description": "The store ID to be previewed.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/previewTokenRequest"
              },
              "example": {
                "start": "2022/07/01 13:00:00",
                "timeZoneId": "America/Toronto",
                "invstatus": "1",
                "tokenLife": "60"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "The preview token is created.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/previewTokenResponse"
                },
                "example": {
                  "previewToken": "Kp6qpaoxqqOqmqq50Xq81g"
                }
              }
            }
          },
          "400": {
            "description": "Bad request. The request could not be understood by the server due to malformed syntax.",
            "content": {}
          },
          "401": {
            "description": "Not authenticated. The user session is not valid.",
            "content": {}
          },
          "403": {
            "description": "The user is not authorized to perform the specified request.",
            "content": {}
          },
          "404": {
            "description": "The specified resource could not be found.",
            "content": {}
          },
          "500": {
            "description": "Internal server error. For details, see the server log files.",
            "content": {}
          }
        },
        "tags": [
          "Marketplace Catalog Upload"
        ]
      }
    },
    "/marketplace-catalog-upload-users": {
      "get": {
        "summary": "Get catalog upload request users.",
        "description": "Get catalog upload request users for a store and seller organization.",
        "operationId": "getCatalogUploadRequestUsers",
        "parameters": [
          {
            "name": "sellerId",
            "in": "query",
            "description": "The seller organization ID",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "storeId",
            "in": "query",
            "description": "The store ID",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "searchString",
            "in": "query",
            "description": "Limits the results to those that match the specified search string.",
            "required": false,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "sort",
            "in": "query",
            "description": "The comma-separated set of properties that control the order of the listed items. Properties can be prefixed by either (-) to sort in descending order, or (+) to sort in ascending order. By default, properties are sorted in ascending order. For example, sort=name will order the items based on the name value in ascending order.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "offset",
            "in": "query",
            "description": "The position within the resulting dataset where the query begins returning item records. If the offset is \"5\", the records that returned begin with the sixth record that matches the query parameters. If the offset is \"0\", the records that are returned begin with the first record that matches the query parameters.",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 0
            }
          },
          {
            "name": "limit",
            "in": "query",
            "description": "The maximum number of records to return.",
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "The request was successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/userCollection"
                }
              }
            }
          },
          "400": {
            "description": "Bad request. The request could not be understood by the server due to malformed syntax.",
            "content": {}
          },
          "401": {
            "description": "Not authenticated. The user session is not valid.",
            "content": {}
          },
          "403": {
            "description": "The user is not authorized to perform the specified request.",
            "content": {}
          },
          "404": {
            "description": "The specified resource could not be found.",
            "content": {}
          },
          "500": {
            "description": "Internal server error. For details, see the server log files.",
            "content": {}
          }
        },
        "tags": [
          "Marketplace Catalog Upload"
        ]
      }
    },
    "/marketplace-offerprice-downloads": {
      "summary": "Download offer price data associated with a price list.",
      "description": "Download offer price data associated with a price list.",
      "post": {
        "summary": "Initiate offer prices download process.",
        "description": "Initiate offer prices download process.",
        "operationId": "createOfferPriceDownloadRequest",
        "parameters": [
          {
            "name": "storeId",
            "in": "query",
            "description": "The catalog assets store ID",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/OfferPriceDownloadRequest"
              }
            }
          }
        },
        "responses": {
          "202": {
            "description": "The request succeeded, and a status resource was created.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/IDResponseBase"
                }
              }
            },
            "headers": {
              "Location": {
                "description": "The URI of the status request.",
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "400": {
            "description": "Bad request. The request could not be understood by the server due to malformed syntax.",
            "content": {}
          },
          "401": {
            "description": "Not authenticated. The user session is not valid.",
            "content": {}
          },
          "403": {
            "description": "The user is not authorized to perform the specified request.",
            "content": {}
          },
          "404": {
            "description": "The specified resource could not be found.",
            "content": {}
          },
          "500": {
            "description": "Internal server error. For details, see the server log files.",
            "content": {}
          }
        },
        "tags": [
          "Marketplace Offer Price Download"
        ]
      }
    },
    "/marketplace-offerprice-downloads/{id}/status": {
      "get": {
        "summary": "Get status of offer prices download request.",
        "description": "Get status of offer price download request.",
        "operationId": "getOfferPriceDownloadRequestStatus",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The offer prices download request ID",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "The request was successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/priceListDownloadStatusResponse"
                }
              }
            },
            "headers": {
              "Location": {
                "description": "The URI of the offer prices download.",
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "400": {
            "description": "Bad request. The request could not be understood by the server due to malformed syntax.",
            "content": {}
          },
          "401": {
            "description": "Not authenticated. The user session is not valid.",
            "content": {}
          },
          "403": {
            "description": "The user is not authorized to perform the specified request.",
            "content": {}
          },
          "404": {
            "description": "The specified resource could not be found.",
            "content": {}
          },
          "500": {
            "description": "Internal server error. For details, see the server log files.",
            "content": {}
          }
        },
        "tags": [
          "Marketplace Offer Price Download"
        ]
      }
    },
    "/marketplace-offerprice-downloads/{id}": {
      "get": {
        "summary": "Download the list of offer prices.",
        "description": "Download the list of offer prices.",
        "operationId": "getOfferPriceDownloadRequest",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The offer price download request ID",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "The request was successful.",
            "content": {
              "application/octet-stream": {
                "schema": {
                  "type": "string",
                  "format": "binary"
                }
              }
            }
          },
          "400": {
            "description": "Bad request. The request could not be understood by the server due to malformed syntax.",
            "content": {}
          },
          "401": {
            "description": "Not authenticated. The user session is not valid.",
            "content": {}
          },
          "403": {
            "description": "The user is not authorized to perform the specified request.",
            "content": {}
          },
          "404": {
            "description": "The specified resource could not be found.",
            "content": {}
          },
          "500": {
            "description": "Internal server error. For details, see the server log files.",
            "content": {}
          }
        },
        "tags": [
          "Marketplace Offer Price Download"
        ]
      }
    },
    "/marketplace-offerprice-uploads": {
      "get": {
        "summary": "Get a list of offer price upload requests.",
        "description": "Get a list of offer price upload requests.",
        "operationId": "getAllOfferPriceUploadRequests",
        "x-introduced": "9.1.12.0",
        "parameters": [
          {
            "name": "priceListId",
            "in": "query",
            "description": "The price list ID",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "storeId",
            "in": "query",
            "description": "The store ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "status",
            "in": "query",
            "description": "The upload status",
            "style": "form",
            "explode": false,
            "required": false,
            "schema": {
              "type": "array",
              "items": {
                "type": "string",
                "enum": [
                  "NEW",
                  "PROCESSING",
                  "COMPLETE",
                  "FAILED",
                  "CANCELED"
                ]
              }
            }
          },
          {
            "name": "limit",
            "in": "query",
            "description": "The maximum number of records to return.",
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "offset",
            "in": "query",
            "description": "The position within the resulting dataset where the query begins returning item records. If the offset is \"5\", the records that returned begin with the sixth record that matches the query parameters. If the offset is \"0\", the records that are returned begin with the first record that matches the query parameters.",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 0
            }
          },
          {
            "name": "searchString",
            "in": "query",
            "description": "Limits the results to those that match the specified search string. This is applicable to **description** field.",
            "required": false,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "userId",
            "in": "query",
            "description": "Limits the results to those that match the specified user ID.",
            "required": false,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "sort",
            "in": "query",
            "description": "The comma-separated set of properties that control the order of the listed items. Properties can be prefixed by either (-) to sort in descending order, or (+) to sort in ascending order. By default, properties are sorted in ascending order. For example, sort=status will order the items based on the status value in ascending order.",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "The request succeeded, and a status resource was created.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/offerPriceUploadCollection"
                }
              }
            },
            "headers": {
              "Location": {
                "description": "The URI of the status endpoint.",
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "400": {
            "description": "Bad request. The request could not be understood by the server due to malformed syntax.",
            "content": {}
          },
          "401": {
            "description": "Not authenticated. The user session is not valid.",
            "content": {}
          },
          "403": {
            "description": "The user is not authorized to perform the specified request.",
            "content": {}
          },
          "404": {
            "description": "The specified resource could not be found.",
            "content": {}
          },
          "500": {
            "description": "Internal server error. For details, see the server log files.",
            "content": {}
          }
        },
        "tags": [
          "Marketplace Offer Price Upload"
        ]
      },
      "post": {
        "summary": "Initiate an offer price upload request.",
        "description": "Initiate an offer price upload request.",
        "operationId": "createOfferPriceUploadRequest",
        "parameters": [
          {
            "name": "priceListId",
            "in": "query",
            "description": "The price list ID",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "storeId",
            "in": "query",
            "description": "The catalog assets store ID",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "characterSet",
            "in": "query",
            "description": "The prices character set",
            "required": false,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "currency",
            "in": "query",
            "description": "The price currency",
            "required": false,
            "schema": {
              "type": "string",
              "default": "USD"
            }
          },
          {
            "name": "languageId",
            "in": "query",
            "description": "The language Id",
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "properties": {
                  "description": {
                    "type": "string"
                  },
                  "UpLoadedFile": {
                    "type": "string",
                    "format": "binary"
                  }
                }
              }
            }
          }
        },
        "responses": {
          "202": {
            "description": "The request succeeded, and a status resource was created.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/IDResponseBase"
                }
              }
            },
            "headers": {
              "Location": {
                "description": "The URI of the status endpoint.",
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "400": {
            "description": "Bad request. The request could not be understood by the server due to malformed syntax.",
            "content": {}
          },
          "401": {
            "description": "Not authenticated. The user session is not valid.",
            "content": {}
          },
          "403": {
            "description": "The user is not authorized to perform the specified request.",
            "content": {}
          },
          "404": {
            "description": "The specified resource could not be found.",
            "content": {}
          },
          "500": {
            "description": "Internal server error. For details, see the server log files.",
            "content": {}
          }
        },
        "tags": [
          "Marketplace Offer Price Upload"
        ]
      }
    },
    "/marketplace-offerprice-uploads/{id}": {
      "get": {
        "summary": "Get the details of an offer price upload request.",
        "description": "Get the details of an offer price upload request.",
        "operationId": "getOfferPriceUploadRequestById",
        "x-introduced": "9.1.12.0",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The price list upload request ID",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "The request was successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/offerPriceUpload"
                }
              }
            }
          },
          "400": {
            "description": "Bad request. The request could not be understood by the server due to malformed syntax.",
            "content": {}
          },
          "401": {
            "description": "Not authenticated. The user session is not valid.",
            "content": {}
          },
          "403": {
            "description": "The user is not authorized to perform the specified request.",
            "content": {}
          },
          "404": {
            "description": "The specified resource could not be found.",
            "content": {}
          },
          "500": {
            "description": "Internal server error. For details, see the server log files.",
            "content": {}
          }
        },
        "tags": [
          "Marketplace Offer Price Upload"
        ]
      },
      "patch": {
        "summary": "Update an offer price upload request.",
        "description": "Update an offer price upload request.",
        "operationId": "updateOfferPriceUploadRequestById",
        "x-introduced": "9.1.12.0",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The price list upload request ID",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/OfferPriceUploadRequest"
              }
            }
          }
        },
        "responses": {
          "204": {
            "description": "The request is successful.",
            "content": {}
          },
          "400": {
            "description": "Bad request. The request could not be understood by the server due to malformed syntax.",
            "content": {}
          },
          "401": {
            "description": "Not authenticated. The user session is not valid.",
            "content": {}
          },
          "403": {
            "description": "The user is not authorized to perform the specified request.",
            "content": {}
          },
          "404": {
            "description": "The specified resource could not be found.",
            "content": {}
          },
          "500": {
            "description": "Internal server error. For details, see the server log files.",
            "content": {}
          }
        },
        "tags": [
          "Marketplace Offer Price Upload"
        ]
      }
    },
    "/marketplace-inventory-downloads": {
      "post": {
        "summary": "Initiate inventory download.",
        "description": "Initiate inventory download process for a marketplace store.",
        "operationId": "createInventoryDownloadRequest",
        "parameters": [
          {
            "name": "sellerId",
            "in": "query",
            "description": "The seller organization ID",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "storeId",
            "in": "query",
            "description": "The marketplace store Id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "202": {
            "description": "The request succeeded, and a new resource was created.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/IDResponseBase"
                }
              }
            },
            "headers": {
              "Location": {
                "description": "The URI of the download request.",
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "400": {
            "description": "Bad request. The request could not be understood by the server due to malformed syntax.",
            "content": {}
          },
          "401": {
            "description": "Not authenticated. The user session is not valid.",
            "content": {}
          },
          "403": {
            "description": "The user is not authorized to perform the specified request.",
            "content": {}
          },
          "404": {
            "description": "The specified resource could not be found.",
            "content": {}
          },
          "500": {
            "description": "Internal server error. For details, see the server log files.",
            "content": {}
          }
        },
        "tags": [
          "Marketplace Inventory Download"
        ]
      }
    },
    "/marketplace-inventory-downloads/{id}": {
      "get": {
        "summary": "Get downloaded inventory.",
        "description": "Get downloaded inventory.",
        "operationId": "getInventoryDownloadRequest",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The inventory download request ID",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "The request was successful.",
            "content": {
              "application/octet-stream": {
                "schema": {
                  "type": "string",
                  "format": "binary"
                }
              }
            }
          },
          "400": {
            "description": "Bad request. The request could not be understood by the server due to malformed syntax.",
            "content": {}
          },
          "401": {
            "description": "Not authenticated. The user session is not valid.",
            "content": {}
          },
          "403": {
            "description": "The user is not authorized to perform the specified request.",
            "content": {}
          },
          "404": {
            "description": "The specified resource could not be found.",
            "content": {}
          },
          "500": {
            "description": "Internal server error. For details, see the server log files.",
            "content": {}
          }
        },
        "tags": [
          "Marketplace Inventory Download"
        ]
      }
    },
    "/marketplace-inventory-downloads/{id}/status": {
      "get": {
        "summary": "Get the status of an inventory download request.",
        "description": "Get inventory download request status.",
        "operationId": "getInventoryDownloadRequestStatus",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The inventory download request ID",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "The request was successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/inventoryDownloadStatusResponse"
                }
              }
            }
          },
          "400": {
            "description": "Bad request. The request could not be understood by the server due to malformed syntax.",
            "content": {}
          },
          "401": {
            "description": "Not authenticated. The user session is not valid.",
            "content": {}
          },
          "403": {
            "description": "The user is not authorized to perform the specified request.",
            "content": {}
          },
          "404": {
            "description": "The specified resource could not be found.",
            "content": {}
          },
          "500": {
            "description": "Internal server error. For details, see the server log files.",
            "content": {}
          }
        },
        "tags": [
          "Marketplace Inventory Download"
        ]
      }
    },
    "/marketplace-inventory-uploads": {
      "get": {
        "summary": "Get inventory upload requests.",
        "description": "Get inventory upload requests for a store and seller organization",
        "operationId": "getInventoryUploadRequests",
        "parameters": [
          {
            "name": "sellerId",
            "in": "query",
            "description": "The seller organization ID",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "storeId",
            "in": "query",
            "description": "The store ID",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "status",
            "in": "query",
            "description": "The upload status",
            "style": "form",
            "explode": false,
            "required": false,
            "schema": {
              "type": "array",
              "items": {
                "type": "string",
                "enum": [
                  "NEW",
                  "PROCESSING",
                  "COMPLETE",
                  "FAILED",
                  "CANCELED"
                ]
              }
            }
          },
          {
            "name": "limit",
            "in": "query",
            "description": "The maximum number of records to return.",
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "offset",
            "in": "query",
            "description": "The position within the resulting dataset where the query begins returning item records. If the offset is \"5\", the records that returned begin with the sixth record that matches the query parameters. If the offset is \"0\", the records that are returned begin with the first record that matches the query parameters.",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 0
            }
          },
          {
            "name": "searchString",
            "in": "query",
            "description": "Limits the results to those that match the specified search string.",
            "required": false,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "userId",
            "in": "query",
            "description": "Limits the results to those that match the specified user ID.",
            "required": false,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "sort",
            "in": "query",
            "description": "The comma-separated set of properties that control the order of the listed items. Properties can be prefixed by either (-) to sort in descending order, or (+) to sort in ascending order. By default, properties are sorted in ascending order. For example, sort=status will order the items based on the status value in ascending order.",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "The request was successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/inventoryUploadCollection"
                }
              },
              "application/xhtml+xml": {
                "schema": {
                  "$ref": "#/components/schemas/inventoryUploadCollection"
                }
              }
            }
          },
          "400": {
            "description": "Bad request. The request could not be understood by the server due to malformed syntax.",
            "content": {}
          },
          "401": {
            "description": "Not authenticated. The user session is not valid.",
            "content": {}
          },
          "403": {
            "description": "The user is not authorized to perform the specified request.",
            "content": {}
          },
          "404": {
            "description": "The specified resource could not be found.",
            "content": {}
          },
          "500": {
            "description": "Internal server error. For details, see the server log files.",
            "content": {}
          }
        },
        "tags": [
          "Marketplace Inventory Upload"
        ]
      },
      "post": {
        "summary": "Initiate inventory upload request.",
        "description": "Initiate inventory upload request.",
        "operationId": "createInventoryUploadRequest",
        "parameters": [
          {
            "name": "sellerId",
            "in": "query",
            "description": "The seller organization ID",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "storeId",
            "in": "query",
            "description": "The store ID",
            "required": true,
            "schema": {
              "type": "string",
              "example": 1
            }
          }
        ],
        "requestBody": {
          "content": {
            "multipart/form-data": {
              "schema": {
                "$ref": "#/components/schemas/inventoryUploadRequest"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "The request succeeded, and a new resource was created.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/IDResponseBase"
                }
              }
            },
            "headers": {
              "Location": {
                "description": "The URI of the upload request.",
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "400": {
            "description": "Bad request. The request could not be understood by the server due to malformed syntax.",
            "content": {}
          },
          "401": {
            "description": "Not authenticated. The user session is not valid.",
            "content": {}
          },
          "403": {
            "description": "The user is not authorized to perform the specified request.",
            "content": {}
          },
          "404": {
            "description": "The specified resource could not be found.",
            "content": {}
          },
          "500": {
            "description": "Internal server error. For details, see the server log files.",
            "content": {}
          }
        },
        "tags": [
          "Marketplace Inventory Upload"
        ]
      }
    },
    "/marketplace-inventory-uploads/{id}": {
      "get": {
        "summary": "Get inventory upload request information.",
        "description": "Get existing inventory upload request.",
        "operationId": "getInventoryUploadRequestById",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The inventory request ID",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "The request was successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/inventoryUpload"
                }
              },
              "application/xhtml+xml": {
                "schema": {
                  "$ref": "#/components/schemas/inventoryUpload"
                }
              }
            }
          },
          "400": {
            "description": "Bad request. The request could not be understood by the server due to malformed syntax.",
            "content": {}
          },
          "401": {
            "description": "Not authenticated. The user session is not valid.",
            "content": {}
          },
          "403": {
            "description": "The user is not authorized to perform the specified request.",
            "content": {}
          },
          "404": {
            "description": "The specified resource could not be found.",
            "content": {}
          },
          "500": {
            "description": "Internal server error. For details, see the server log files.",
            "content": {}
          }
        },
        "tags": [
          "Marketplace Inventory Upload"
        ]
      }
    },
    "/marketplace-inventory-upload-users": {
      "get": {
        "summary": "Get inventory upload request users.",
        "description": "Get inventory upload request users for a seller organization.",
        "operationId": "getInventoryUploadRequestUsers",
        "parameters": [
          {
            "name": "sellerId",
            "in": "query",
            "description": "The seller organization ID",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "searchString",
            "in": "query",
            "description": "Limits the results to those that match the specified search string.",
            "required": false,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "sort",
            "in": "query",
            "description": "The comma-separated set of properties that control the order of the listed items. Properties can be prefixed by either (-) to sort in descending order, or (+) to sort in ascending order. By default, properties are sorted in ascending order. For example, sort=name will order the items based on the name value in ascending order.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "offset",
            "in": "query",
            "description": "The position within the resulting dataset where the query begins returning item records. If the offset is \"5\", the records that returned begin with the sixth record that matches the query parameters. If the offset is \"0\", the records that are returned begin with the first record that matches the query parameters.",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 0
            }
          },
          {
            "name": "limit",
            "in": "query",
            "description": "The maximum number of records to return.",
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "The request was successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/userCollection"
                }
              }
            }
          },
          "400": {
            "description": "Bad request. The request could not be understood by the server due to malformed syntax.",
            "content": {}
          },
          "401": {
            "description": "Not authenticated. The user session is not valid.",
            "content": {}
          },
          "403": {
            "description": "The user is not authorized to perform the specified request.",
            "content": {}
          },
          "404": {
            "description": "The specified resource could not be found.",
            "content": {}
          },
          "500": {
            "description": "Internal server error. For details, see the server log files.",
            "content": {}
          }
        },
        "tags": [
          "Marketplace Inventory Upload"
        ]
      }
    }
  },
  "components": {
    "schemas": {
      "catalogUploadCollection": {
        "type": "object",
        "properties": {
          "href": {
            "type": "string"
          },
          "count": {
            "type": "integer"
          },
          "items": {
            "type": "array",
            "description": "The items.",
            "items": {
              "$ref": "#/components/schemas/catalogUpload"
            }
          }
        }
      },
      "catalogUpload": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "The unique numeric ID of the catalog upload."
          },
          "storeId": {
            "type": "number",
            "description": "The unique numeric ID of the store.",
            "format": "int32"
          },
          "sellerId": {
            "description": "The unique numeric ID of the seller organization.",
            "type": "string"
          },
          "userId": {
            "description": "The unique numeric ID of the user that created the catalog upload.",
            "type": "string"
          },
          "userFirstName": {
            "description": "The first name of the user that created the catalog upload.",
            "type": "string"
          },
          "userLastName": {
            "description": "The last name of the user that created the catalog upload.",
            "type": "string"
          },
          "userLogonId": {
            "description": "The logon ID of the user that created the catalog upload.",
            "type": "string"
          },
          "status": {
            "type": "string"
          },
          "description": {
            "type": "string",
            "nullable": true
          },
          "createDate": {
            "type": "string",
            "format": "date-time"
          },
          "scheduledCommit": {
            "type": "string",
            "description": "The schedule commit. Possible values [onApproval, onSpecificDate]"
          },
          "commitDate": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "links": {
            "type": "object",
            "properties": {
              "self": {
                "type": "object",
                "properties": {
                  "href": {
                    "type": "string",
                    "description": "The URL of the link."
                  }
                },
                "description": "The self link."
              },
              "files": {
                "type": "object",
                "properties": {
                  "href": {
                    "type": "string",
                    "description": "The URL of the link to files associated with this request.",
                    "nullable": true
                  }
                },
                "description": "The file relationships of a upload request."
              },
              "comments": {
                "type": "object",
                "properties": {
                  "href": {
                    "type": "string",
                    "description": "The URL of the link to comments associated with this request.",
                    "nullable": true
                  }
                },
                "description": "The comment relationships of a upload request."
              }
            }
          }
        }
      },
      "catalogFileCollection": {
        "type": "object",
        "properties": {
          "href": {
            "type": "string"
          },
          "count": {
            "type": "integer"
          },
          "items": {
            "type": "array",
            "description": "The items.",
            "items": {
              "$ref": "#/components/schemas/catalogFile"
            }
          }
        }
      },
      "catalogFile": {
        "type": "object",
        "properties": {
          "id": {
            "type": "integer",
            "description": "the file ID"
          },
          "status": {
            "type": "string",
            "description": "the file status"
          },
          "summaryReport": {
            "type": "string"
          },
          "name": {
            "type": "string",
            "nullable": true,
            "description": "the file name"
          },
          "size": {
            "type": "integer",
            "description": "the file size"
          },
          "characterSet": {
            "type": "string",
            "default": "UTF-8",
            "description": "the file encoding"
          },
          "currency": {
            "type": "string",
            "nullable": true
          },
          "languageId": {
            "type": "string",
            "nullable": true
          },
          "catalogUploadId": {
            "type": "string",
            "example": "10001"
          },
          "userId": {
            "description": "The unique numeric ID of the user that uploaded the file.",
            "type": "string"
          },
          "userFirstName": {
            "description": "The first name of the user that uploaded the file.",
            "type": "string"
          },
          "userLastName": {
            "description": "The last name of the user that uploaded the file.",
            "type": "string"
          },
          "userLogonId": {
            "description": "The logon ID of the user that uploaded the file.",
            "type": "string"
          },
          "uploadDate": {
            "type": "string",
            "format": "date-time",
            "description": "The date and time the file was uploaded."
          }
        }
      },
      "commentCollection": {
        "type": "object",
        "properties": {
          "href": {
            "type": "string",
            "description": "The resource link."
          },
          "count": {
            "type": "integer"
          },
          "items": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/comment"
            }
          }
        }
      },
      "comment": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "readOnly": true
          },
          "catalogUploadId": {
            "type": "string",
            "example": "10001"
          },
          "comment": {
            "type": "string"
          },
          "userId": {
            "description": "The unique numeric ID of the user that created the comment.",
            "type": "string"
          },
          "userFirstName": {
            "description": "The first name of the user that created the comment.",
            "type": "string"
          },
          "userLastName": {
            "description": "The last name of the user that created the comment.",
            "type": "string"
          },
          "userLogonId": {
            "description": "The logon ID of the user that created the comment.",
            "type": "string"
          },
          "createDate": {
            "type": "string",
            "format": "date-time",
            "readOnly": true
          }
        }
      },
      "commentResponseCollection": {
        "type": "object",
        "properties": {
          "commentId": {
            "description": "The newly created comment Id.",
            "type": "integer"
          }
        }
      },
      "catalogUploadCreateRequest": {
        "type": "object",
        "required": [
          "sellerId",
          "storeId"
        ],
        "properties": {
          "sellerId": {
            "type": "string",
            "description": "The seller organization ID",
            "example": "7000000000000007001"
          },
          "storeId": {
            "type": "integer",
            "format": "int32",
            "description": "The store ID"
          },
          "scheduledCommit": {
            "type": "string",
            "default": "onApproval",
            "description": "The schedule commit. Possible values [onApproval, onSpecificDate]"
          },
          "commitDate": {
            "type": "string",
            "format": "date-time",
            "description": "The commit date is needed when onSpecificDate is used for scheduledCommit."
          },
          "description": {
            "type": "string",
            "description": "The description label"
          },
          "comment": {
            "type": "string",
            "description": "The comment"
          }
        }
      },
      "priceListDownloadStatusResponse": {
        "type": "object",
        "required": [
          "status"
        ],
        "properties": {
          "id": {
            "type": "string",
            "description": "The unique numeric ID of the price list upload."
          },
          "summaryReport": {
            "type": "string"
          },
          "status": {
            "description": "The download status",
            "type": "string"
          }
        }
      },
      "catalogUploadUpdateRequest": {
        "type": "object",
        "properties": {
          "scheduledCommit": {
            "type": "string",
            "default": "onApproval",
            "description": "The schedule commit. Possible values [onApproval, onSpecificDate]"
          },
          "commitDate": {
            "type": "string",
            "format": "date-time",
            "description": "The commit date is needed when onSpecificDate is used for scheduledCommit."
          },
          "description": {
            "type": "string",
            "description": "The description label"
          },
          "comment": {
            "type": "string",
            "description": "The comment"
          }
        }
      },
      "catalogDownloadStatusResponse": {
        "type": "object",
        "required": [
          "status"
        ],
        "properties": {
          "status": {
            "description": "The download status",
            "type": "integer",
            "format": "int32"
          }
        }
      },
      "catalogProductsDownload": {
        "type": "object",
        "required": [
          "sellerId",
          "objectType"
        ],
        "properties": {
          "sellerId": {
            "description": "The seller organization ID",
            "type": "string"
          },
          "objectType": {
            "description": "The business object type to download.",
            "type": "string",
            "enum": [
              "Product",
              "Attribute"
            ]
          },
          "currency": {
            "type": "string",
            "description": "The currency to use for the export."
          },
          "langId": {
            "type": "string",
            "description": "The ID of the language for the descriptions to be exported. The default is the store default language if it is not specified."
          },
          "parentGroupIdentifier": {
            "type": "string",
            "description": "The categories to be exported. It can be a single category identifier, or a list of category identifiers separated by comma. The default is all categories associated with that seller if it is not specified."
          }
        }
      },
      "catalogAttributesDownload": {
        "type": "object",
        "required": [
          "sellerId",
          "objectType"
        ],
        "properties": {
          "sellerId": {
            "description": "The seller organization ID",
            "type": "string"
          },
          "objectType": {
            "description": "The business object type to download.",
            "type": "string",
            "enum": [
              "Product",
              "Attribute"
            ]
          },
          "langId": {
            "type": "string",
            "description": "The ID of the language for the values to be exported. The default is the store default language if it is not specified."
          }
        }
      },
      "approveResponseCollection": {
        "type": "object",
        "properties": {
          "message": {
            "description": "The user message",
            "type": "string"
          }
        }
      },
      "rejectResponseCollection": {
        "type": "object",
        "properties": {
          "message": {
            "description": "The user message",
            "type": "string"
          }
        }
      },
      "submitResponseCollection": {
        "type": "object",
        "properties": {
          "message": {
            "description": "The user message",
            "type": "string"
          }
        }
      },
      "offerPriceUploadCollection": {
        "type": "object",
        "properties": {
          "href": {
            "type": "string"
          },
          "count": {
            "type": "integer"
          },
          "items": {
            "type": "array",
            "description": "The items.",
            "items": {
              "$ref": "#/components/schemas/offerPriceUpload"
            }
          }
        }
      },
      "offerPriceUploadBase": {
        "type": "object",
        "properties": {
          "priceListId": {
            "type": "string",
            "description": "The price list Id"
          }
        }
      },
      "offerPriceUpload": {
        "allOf": [
          {
            "$ref": "#/components/schemas/inventoryUpload"
          },
          {
            "$ref": "#/components/schemas/offerPriceUploadBase"
          }
        ]
      },
      "inventoryUploadCollection": {
        "type": "object",
        "properties": {
          "href": {
            "type": "string"
          },
          "count": {
            "type": "integer"
          },
          "items": {
            "type": "array",
            "description": "The items.",
            "items": {
              "$ref": "#/components/schemas/inventoryUpload"
            }
          }
        }
      },
      "inventoryUpload": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "The unique numeric ID of the inventory upload."
          },
          "storeId": {
            "type": "number",
            "description": "The unique numeric ID of the store.",
            "format": "int32"
          },
          "storeIdentifier": {
            "type": "string",
            "description": "The the store identifier."
          },
          "sellerId": {
            "description": "The unique numeric ID of the seller organization.",
            "type": "string"
          },
          "userId": {
            "description": "The unique numeric ID of the user that created the inventory upload.",
            "type": "string"
          },
          "userFirstName": {
            "description": "The first name of the user that created the inventory upload.",
            "type": "string"
          },
          "userLastName": {
            "description": "The last name of the user that created the inventory upload.",
            "type": "string"
          },
          "userLogonId": {
            "description": "The logon ID of the user that created the inventory upload.",
            "type": "string"
          },
          "status": {
            "type": "string"
          },
          "description": {
            "type": "string"
          },
          "createDate": {
            "type": "string",
            "format": "date-time"
          },
          "fileName": {
            "type": "string"
          },
          "summaryReport": {
            "type": "string"
          },
          "links": {
            "type": "object",
            "properties": {
              "self": {
                "type": "object",
                "properties": {
                  "href": {
                    "type": "string",
                    "description": "The URL of the link."
                  }
                },
                "description": "The self link."
              }
            }
          }
        }
      },
      "inventoryUploadRequest": {
        "type": "object",
        "properties": {
          "description": {
            "type": "string"
          },
          "UpLoadedFile": {
            "type": "string",
            "format": "binary"
          }
        }
      },
      "inventoryDownloadStatusResponse": {
        "type": "object",
        "required": [
          "status"
        ],
        "properties": {
          "status": {
            "description": "The download status",
            "type": "integer",
            "format": "int32"
          }
        }
      },
      "userCollection": {
        "type": "object",
        "properties": {
          "href": {
            "type": "string"
          },
          "count": {
            "type": "integer"
          },
          "items": {
            "type": "array",
            "description": "The items.",
            "items": {
              "$ref": "#/components/schemas/user"
            }
          }
        }
      },
      "user": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string"
          },
          "firstName": {
            "type": "string"
          },
          "lastName": {
            "type": "string"
          },
          "logonId": {
            "type": "string"
          }
        }
      },
      "previewTokenRequest": {
        "type": "object",
        "properties": {
          "start": {
            "type": "string",
            "description": "The start date and time. Example :\"2013/09/11 13:00:00\""
          },
          "timeZoneId": {
            "type": "string",
            "description": "The time zone identifier. Example : \"America/New_York\""
          },
          "status": {
            "type": "string",
            "description": "Determines if time should be static while in preview mode. Set to either \"true\" or \"false\"."
          },
          "invstatus": {
            "type": "string",
            "description": "The inventory status number. <br> * 0 - use inventory levels in the database <br> * 1 - set all inventory filter results to true <br> * -1 - set all inventory filter results to false."
          },
          "tokenLife": {
            "type": "string",
            "description": "Lifespan of the preview token in minutes. Example : \"60\""
          },
          "includedMemberGroupIds": {
            "type": "string",
            "description": "Comma separated list of member groups to simulate. Example : \"8000000000000000007,8000000000000000006\""
          },
          "startDate": {
            "type": "string",
            "description": "The start date/time of the preview token in the form \"YYYY/MM/DD HH:MM:SS\"."
          },
          "endDate": {
            "type": "string",
            "description": "The end date/time of the preview token in the form \"YYYY/MM/DD HH:MM:SS\"."
          }
        }
      },
      "previewTokenResponse": {
        "type": "object",
        "properties": {
          "previewToken": {
            "type": "string"
          }
        }
      },
      "IDResponseBase": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "The resource id"
          }
        }
      },
      "FileIDResponse": {
        "type": "object",
        "properties": {
          "fileId": {
            "type": "string",
            "description": "The file id"
          }
        }
      },
      "OfferPriceUploadRequest": {
        "type": "object",
        "properties": {
          "description": {
            "type": "string",
            "description": "The offer price upload request description"
          }
        }
      },
      "OfferPriceDownloadRequest": {
        "type": "object",
        "required": [
          "priceListId"
        ],
        "properties": {
          "priceListId": {
            "type": "string",
            "description": "The price list Id"
          },
          "currency": {
            "type": "string",
            "description": "The currency. Defaults to USD."
          }
        }
      }
    },
    "securitySchemes": {
      "basicAuth": {
        "type": "http",
        "scheme": "basic"
      }
    }
  },
  "security": [
    {
      "basicAuth": []
    }
  ],
  "tags": [
    {
      "name": "Marketplace Catalog Download",
      "description": "Download catalog data (products, attributes) used by marketplace sellers."
    },
    {
      "name": "Marketplace Catalog Upload",
      "description": "Upload catalog data (products) used by marketplace sellers."
    },
    {
      "name": "Marketplace Offer Price Download",
      "description": "Download offer prices used by marketplace sellers.",
      "x-introduced": "9.1.12.0"
    },
    {
      "name": "Marketplace Offer Price Upload",
      "description": "Upload offer prices used by marketplace sellers.",
      "x-introduced": "9.1.12.0"
    },
    {
      "name": "Marketplace Inventory Download",
      "description": "Download inventory data owned by marketplace sellers."
    },
    {
      "name": "Marketplace Inventory Upload",
      "description": "Upload inventory data owned by marketplace sellers."
    }
  ],
  "externalDocs": {
    "description": "Some REST services take languageId as a request parameter. For a list of the integers that map to the supported default languages, please refer to this Help Center page.",
    "url": "https://help.hcltechsw.com/commerce/9.1.0/database/database/language.html"
  }
}
