{
  "openapi": "3.0.1",
  "info": {
    "title": "Price Lists",
    "description": "Create and administer price lists.",
    "version": "9.1.20.0",
    "x-introduced": "9.1.0.0"
  },
  "servers": [
    {
      "url": "https://{hostname}:{port}/rest/admin/v2",
      "variables": {
        "port": {
          "default": "443",
          "enum": [
            "443",
            "8000"
          ]
        },
        "hostname": {
          "default": "localhost",
          "enum": [
            "localhost",
            "test.hcl.com"
          ]
        }
      }
    }
  ],
  "tags": [
    {
      "name": "Price Lists",
      "description": "Provide RESTful services to manage price lists."
    }
  ],
  "paths": {
    "/price-lists": {
      "get": {
        "tags": [
          "Price Lists"
        ],
        "description": "Get a collection of price lists.",
        "operationId": "getPriceLists",
        "parameters": [
          {
            "name": "id",
            "in": "query",
            "description": "The unique generated ID of the price list item.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "organizationId",
            "in": "query",
            "description": "The owner organization of the price list.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "storeId",
            "in": "query",
            "description": "Limits the results to price lists that are associated with the specified store ID.",
            "x-introduced": "9.1.12.0",
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "usage",
            "in": "query",
            "description": "Limits the results to price lists with the specified usage. Possible values are \n * List - List price list\n * Master - Master offer price list\n * Default - Offer price list other than master offer price list\n * Nominal - Nominal price list",
            "x-introduced": "9.1.12.0",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "searchString",
            "in": "query",
            "description": "Limits search results to only include price lists with a name that matches the value of this parameter.",
            "x-introduced": "9.1.12.0",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "productSetId",
            "in": "query",
            "description": "The product set the specifies the list of products contained in the price list.",
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "description",
            "in": "query",
            "description": "A brief description of the  price list, suitable for display to an administrator managing a price list.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "identifier",
            "in": "query",
            "description": "A mnemonic name for the price list, unique for a particular owner.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "markForDelete",
            "in": "query",
            "description": "Indicates if this the price list is marked for deletion:\\n0 = No.\\n1 = Yes, the TradingPositionContainer has been marked for deletion and should not be used.",
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "precedence",
            "in": "query",
            "description": "When more than one price lists are qualified at a particular time, the one with the highest precedence is used.",
            "schema": {
              "type": "number",
              "format": "double"
            }
          },
          {
            "name": "type",
            "in": "query",
            "description": "The Trading Position Container type:\\nS = standard price list which contains the base prices for the products in the store catalog\\nC = custom price list which specifies the list of products and their customized prices\\nE = external price list imported from an external system. The external price list specifies the list of products and their customized prices.\\nThe difference between external price list and custom price list is that the former allows the user interface to only pass any updates to the server, and does not need to send the entire price list definition.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "flags",
            "in": "query",
            "description": "This column contains the following bit flag indicating special processing to be performed by task commands that find prices for customers- \\n1 = restricted. To use price lists in this price list container, the customer must be in one of the associated MemberGroups. The associated MemberGroups are recognized by the Store as customer groups (see MGPTRDPSCN and STOREMBRGP). Use the TermAndCondition and Participant objects to limit the use of TradingPositionContainers to certain customers.No other bit flags can be stored in this column. This column is deprecated and is provided for backward compatibility only.",
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "workspace.name",
            "in": "query",
            "description": "The unique system-generated code for identifying the workspace. This identifier is not the name that is assigned to the workspace by the Workspace Manager.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "workspace.taskGroup",
            "in": "query",
            "description": "The unique system-generated code for identifying the task group. This identifier is not the name that is assigned to the task group by the Workspace Manager.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "workspace.task",
            "in": "query",
            "description": "The unique system-generated code for identifying the task. This identifier is not the name that is assigned to the task by the Workspace Manager.",
            "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"
            }
          },
          {
            "name": "limit",
            "in": "query",
            "description": "The maximum number of records to return.",
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "fields",
            "in": "query",
            "description": "The comma-separated set of properties to be returned. If no properties are specified, all properties are returned.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "expand",
            "in": "query",
            "description": "The comma-separated set of related resources referenced in the links to be returned. If no related resources are specified, no related resources are returned.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "sort",
            "in": "query",
            "description": "The comma-separated set of properties which controls the order of the items being listed, prefixed by either (-) to sort by descending order, or optionally (+) to sort by ascending order. For example, sort=name,-d which means, order the items based on the name value in ascending order, then by the id value in descending order.",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "A collection of price lists.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PriceListCollection"
                }
              }
            }
          },
          "400": {
            "description": "There was a client error.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorResponseContainer"
                }
              }
            }
          },
          "500": {
            "description": "There was a server error.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorResponseContainer"
                }
              }
            }
          }
        }
      },
      "post": {
        "tags": [
          "Price Lists"
        ],
        "description": "Create a price list.",
        "operationId": "createPriceList",
        "parameters": [
          {
            "name": "workspace.name",
            "in": "query",
            "description": "The unique system-generated code for identifying the workspace. This identifier is not the name that is assigned to the workspace by the Workspace Manager.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "workspace.taskGroup",
            "in": "query",
            "description": "The unique system-generated code for identifying the task group. This identifier is not the name that is assigned to the task group by the Workspace Manager.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "workspace.task",
            "in": "query",
            "description": "The unique system-generated code for identifying the task. This identifier is not the name that is assigned to the task by the Workspace Manager.",
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "description": "The price list. An offer is part of a trading position container, which is owned by a member. A trading position container contains trading positions. The position container can be made available to all customers, or to only customers in certain groups. To make the container available to customers use the trading agreements or contracts, and the terms and conditions in the contracts. Under a contract, a trading position container is a price business object that can be referenced by multiple price business policies. The container, as a price business object, can be shared by a store or all stores in a store group. A trading position container is also referred to as a price list. In some business models, you can have multiple standard price lists, which could be based on either cost, or on list prices.",
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/PriceList"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "description": "The operation was successful.",
            "content": {},
            "headers": {
              "Location": {
                "description": "The URI of the PriceList.",
                "schema": {
                  "type": "string"
                }
              }
            },
            "links": {
              "GetPriceListById": {
                "operationRef": "#/paths/~1price-lists~1{id}/get",
                "parameters": {
                  "id": "$request.body#/id"
                },
                "description": "The `id`value used in the request body can be used as the `id`  parameter in `GET /price-lists/{id}`.\n"
              },
              "DeletePriceListById": {
                "operationRef": "#/paths/~1price-lists~1{id}/delete",
                "parameters": {
                  "id": "$request.body#/id"
                },
                "description": "The `id`value used in the request body can be used as the The `id` parameter in `DELETE /price-lists/{id}`.\n"
              },
              "UpdatePriceListById": {
                "operationRef": "#/paths/~1price-lists~1{id}/patch",
                "parameters": {
                  "id": "$request.body#/id"
                },
                "description": "The `id`value used in the request body can be used as the `id` parameter in `PATCH /price-lists/{id}`.\n"
              }
            }
          },
          "400": {
            "description": "There was a client error.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorResponseContainer"
                }
              }
            }
          },
          "500": {
            "description": "There was a server error.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorResponseContainer"
                }
              }
            }
          }
        },
        "x-codegen-request-body-name": "PriceList"
      }
    },
    "/price-lists/{id}": {
      "get": {
        "tags": [
          "Price Lists"
        ],
        "description": "Get a price list.",
        "operationId": "getPriceListById",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The unique generated ID of the price list item.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "workspace.name",
            "in": "query",
            "description": "The unique system-generated code for identifying the workspace. This identifier is not the name that is assigned to the workspace by the Workspace Manager.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "workspace.taskGroup",
            "in": "query",
            "description": "The unique system-generated code for identifying the task group. This identifier is not the name that is assigned to the task group by the Workspace Manager.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "workspace.task",
            "in": "query",
            "description": "The unique system-generated code for identifying the task. This identifier is not the name that is assigned to the task by the Workspace Manager.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "fields",
            "in": "query",
            "description": "The comma-separated set of properties to be returned. If no properties are specified, all properties are returned.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "expand",
            "in": "query",
            "description": "The comma-separated set of related resources referenced in the links to be returned. If no related resources are specified, no related resources are returned.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "sort",
            "in": "query",
            "description": "The comma-separated set of properties which controls the order of the items being listed, prefixed by either (-) to sort by descending order, or optionally (+) to sort by ascending order. For example, sort=name,-d which means, order the items based on the name value in ascending order, then by the id value in descending order.",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "The price list. An offer is part of a trading position container, which is owned by a member. A trading position container contains trading positions. The position container can be made available to all customers, or to only customers in certain groups. To make the container available to customers use the trading agreements or contracts, and the terms and conditions in the contracts. Under a contract, a trading position container is a price business object that can be referenced by multiple price business policies. The container, as a price business object, can be shared by a store or all stores in a store group. A trading position container is also referred to as a price list. In some business models, you can have multiple standard price lists, which could be based on either cost, or on list prices.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PriceItems"
                }
              }
            }
          },
          "400": {
            "description": "There was a client error.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorResponseContainer"
                }
              }
            }
          },
          "404": {
            "description": "The resource was not found.",
            "content": {}
          },
          "500": {
            "description": "There was a server error.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorResponseContainer"
                }
              }
            }
          }
        }
      },
      "delete": {
        "tags": [
          "Price Lists"
        ],
        "description": "Delete a Price list.",
        "operationId": "deletePriceListById",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The unique generated ID of the price list item.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "workspace.name",
            "in": "query",
            "description": "The unique system-generated code for identifying the workspace. This identifier is not the name that is assigned to the workspace by the Workspace Manager.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "workspace.taskGroup",
            "in": "query",
            "description": "The unique system-generated code for identifying the task group. This identifier is not the name that is assigned to the task group by the Workspace Manager.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "workspace.task",
            "in": "query",
            "description": "The unique system-generated code for identifying the task. This identifier is not the name that is assigned to the task by the Workspace Manager.",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "204": {
            "description": "The operation was successful.",
            "content": {}
          },
          "400": {
            "description": "There was a client error.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorResponseContainer"
                }
              }
            }
          },
          "404": {
            "description": "The resource was not found.",
            "content": {}
          },
          "500": {
            "description": "There was a server error.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorResponseContainer"
                }
              }
            }
          }
        }
      },
      "patch": {
        "tags": [
          "Price Lists"
        ],
        "description": "Update a price list.",
        "operationId": "updatePriceListById",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The unique generated ID of the price list item.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "workspace.name",
            "in": "query",
            "description": "The unique system-generated code for identifying the workspace. This identifier is not the name that is assigned to the workspace by the Workspace Manager.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "workspace.taskGroup",
            "in": "query",
            "description": "The unique system-generated code for identifying the task group. This identifier is not the name that is assigned to the task group by the Workspace Manager.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "workspace.task",
            "in": "query",
            "description": "The unique system-generated code for identifying the task. This identifier is not the name that is assigned to the task by the Workspace Manager.",
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "description": "The price list. An offer is part of a trading position container, which is owned by a member. A trading position container contains trading positions. The position container can be made available to all customers, or to only customers in certain groups. To make the container available to customers use the trading agreements or contracts, and the terms and conditions in the contracts. Under a contract, a trading position container is a price business object that can be referenced by multiple price business policies. The container, as a price business object, can be shared by a store or all stores in a store group. A trading position container is also referred to as a price list. In some business models, you can have multiple standard price lists, which could be based on either cost, or on list prices.",
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/PriceList"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "The operation was successful.",
            "content": {}
          },
          "400": {
            "description": "There was a client error.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorResponseContainer"
                }
              }
            }
          },
          "404": {
            "description": "The resource was not found.",
            "content": {}
          },
          "500": {
            "description": "There was a server error.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorResponseContainer"
                }
              }
            }
          }
        },
        "x-codegen-request-body-name": "PriceList"
      }
    },
    "/price-lists/{id}/offers": {
      "get": {
        "tags": [
          "Price Lists"
        ],
        "operationId": "getOffersOfPriceList",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The unique generated ID of the price list item.",
            "required": true,
            "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"
            }
          },
          {
            "name": "limit",
            "in": "query",
            "description": "The maximum number of records to return.",
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "fields",
            "in": "query",
            "description": "The comma-separated set of properties to be returned. If no properties are specified, all properties are returned.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "expand",
            "in": "query",
            "description": "The comma-separated set of related resources referenced in the links to be returned. If no related resources are specified, no related resources are returned.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "sort",
            "in": "query",
            "description": "The comma-separated set of properties which controls the order of the items being listed, prefixed by either (-) to sort by descending order, or optionally (+) to sort by ascending order. For example, sort=name,-d which means, order the items based on the name value in ascending order, then by the id value in descending order.",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "A collection of offers.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/OfferCollection"
                }
              }
            }
          },
          "400": {
            "description": "There was a client error.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorResponseContainer"
                }
              }
            }
          },
          "500": {
            "description": "There was a server error.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorResponseContainer"
                }
              }
            }
          }
        }
      }
    },
    "/price-lists/{priceListId}/catalog-entries": {
      "get": {
        "tags": [
          "Price Lists"
        ],
        "operationId": "getPriceListCatalogEntries",
        "x-introduced": "9.1.12.0",
        "parameters": [
          {
            "name": "priceListId",
            "in": "path",
            "description": "The unique ID of the price list.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "storeId",
            "in": "query",
            "required": true,
            "description": "The store ID.",
            "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"
            }
          },
          {
            "name": "limit",
            "in": "query",
            "description": "The maximum number of records to return.",
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "sort",
            "in": "query",
            "description": "The comma-separated set of properties which controls the order of the items being listed, prefixed by either (-) to sort by descending order, or optionally (+) to sort by ascending order. For example, sort=name which means, order the items based on the name value in ascending order.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "searchString",
            "in": "query",
            "description": "Limits search results to only include price list catalog entries with a name or part number that matches the value of this parameter.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "languageId",
            "in": "query",
            "required": false,
            "description": "The integer for identifying the language of the catalog entry description. For a list of the integers that map to the supported default languages, refer to the Knowledge Center.",
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "A collection of price list catalog entries.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PriceListCatalogEntryCollection"
                }
              }
            }
          },
          "400": {
            "description": "There was a client error.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorResponseContainer"
                }
              }
            }
          },
          "500": {
            "description": "There was a server error.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorResponseContainer"
                }
              }
            }
          }
        }
      }
    },
    "/price-lists/{priceListId}/catalog-entries/{id}": {
      "get": {
        "tags": [
          "Price Lists"
        ],
        "operationId": "getPriceListCatalogEntryById",
        "x-introduced": "9.1.12.0",
        "parameters": [
          {
            "name": "priceListId",
            "in": "path",
            "description": "The unique generated ID of the price list item.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "id",
            "in": "path",
            "description": "The unique generated ID of the price list item.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "storeId",
            "in": "query",
            "required": true,
            "description": "The store ID.",
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "languageId",
            "in": "query",
            "required": false,
            "description": "The integer for identifying the language of the catalog entry description. For a list of the integers that map to the supported default languages, refer to the Knowledge Center.",
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "A collection of price list catalog entries.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PriceListCatalogEntry"
                }
              }
            }
          },
          "400": {
            "description": "There was a client error.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorResponseContainer"
                }
              }
            }
          },
          "404": {
            "description": "The resource was not found.",
            "content": {}
          },
          "500": {
            "description": "There was a server error.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorResponseContainer"
                }
              }
            }
          }
        }
      }
    }
  },
  "components": {
    "schemas": {
      "Link": {
        "type": "object",
        "properties": {
          "href": {
            "type": "string",
            "description": "The URL of the link.",
            "format": "uri"
          }
        },
        "description": "Links to related resources."
      },
      "Error": {
        "type": "object",
        "properties": {
          "errorCode": {
            "type": "string",
            "description": "The error message code."
          },
          "errorMessage": {
            "type": "string",
            "description": "The error message."
          },
          "errorKey": {
            "type": "string",
            "description": "The error message key."
          },
          "errorParameters": {
            "type": "array",
            "description": "The arguments used to construct the error message.",
            "items": {
              "type": "object",
              "properties": {}
            }
          },
          "errorLevel": {
            "type": "string",
            "description": "The error level."
          },
          "errorHref": {
            "type": "string",
            "description": "The error hypertext reference."
          }
        },
        "description": "The error message item model."
      },
      "ErrorResponseContainer": {
        "type": "object",
        "properties": {
          "requestId": {
            "type": "string",
            "description": "The request identifier."
          },
          "errors": {
            "type": "array",
            "description": "The errors.",
            "items": {
              "$ref": "#/components/schemas/Error"
            }
          }
        },
        "description": "The error message model."
      },
      "PriceList": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "The unique generated ID of the price list item."
          },
          "organizationId": {
            "type": "string",
            "description": "The owner organization of the price list."
          },
          "productSetId": {
            "type": "integer",
            "description": "The product set the specifies the list of products contained in the price list.",
            "format": "int32"
          },
          "description": {
            "type": "string",
            "description": "A brief description of the  price list, suitable for display to an administrator managing a price list."
          },
          "identifier": {
            "type": "string",
            "description": "A mnemonic name for the price list, unique for a particular owner."
          },
          "markForDelete": {
            "type": "integer",
            "description": "Indicates if this the price list is marked for deletion:\\n0 = No.\\n1 = Yes, the TradingPositionContainer has been marked for deletion and should not be used.",
            "format": "int32"
          },
          "precedence": {
            "type": "number",
            "description": "When more than one price lists are qualified at a particular time, the one with the highest precedence is used.",
            "format": "double"
          },
          "type": {
            "type": "string",
            "description": "The Trading Position Container type:\\nS = standard price list which contains the base prices for the products in the store catalog\\nC = custom price list which specifies the list of products and their customized prices\\nE = external price list imported from an external system. The external price list specifies the list of products and their customized prices.\\nThe difference between external price list and custom price list is that the former allows the user interface to only pass any updates to the server, and does not need to send the entire price list definition."
          },
          "flags": {
            "type": "integer",
            "description": "This column contains the following bit flag indicating special processing to be performed by task commands that find prices for customers- \\n1 = restricted. To use price lists in this price list container, the customer must be in one of the associated MemberGroups. The associated MemberGroups are recognized by the Store as customer groups (see MGPTRDPSCN and STOREMBRGP). Use the TermAndCondition and Participant objects to limit the use of TradingPositionContainers to certain customers.No other bit flags can be stored in this column. This column is deprecated and is provided for backward compatibility only.",
            "format": "int32"
          }
        },
        "description": "The price list. An offer is part of a trading position container, which is owned by a member. A trading position container contains trading positions. The position container can be made available to all customers, or to only customers in certain groups. To make the container available to customers use the trading agreements or contracts, and the terms and conditions in the contracts. Under a contract, a trading position container is a price business object that can be referenced by multiple price business policies. The container, as a price business object, can be shared by a store or all stores in a store group. A trading position container is also referred to as a price list. In some business models, you can have multiple standard price lists, which could be based on either cost, or on list prices."
      },
      "PriceItems": {
        "type": "object",
        "required": [
          "organizationId"
        ],
        "properties": {
          "id": {
            "type": "string",
            "description": "The unique generated ID of the price list item."
          },
          "organizationId": {
            "type": "string",
            "description": "The owner organization of the price list."
          },
          "productSetId": {
            "type": "integer",
            "description": "The product set the specifies the list of products contained in the price list.",
            "format": "int32"
          },
          "description": {
            "type": "string",
            "description": "A brief description of the  price list, suitable for display to an administrator managing a price list."
          },
          "identifier": {
            "type": "string",
            "description": "A mnemonic name for the price list, unique for a particular owner."
          },
          "markForDelete": {
            "type": "integer",
            "description": "Indicates if this the price list is marked for deletion:\\n0 = No.\\n1 = Yes, the TradingPositionContainer has been marked for deletion and should not be used.",
            "format": "int32"
          },
          "precedence": {
            "type": "number",
            "description": "When more than one price lists are qualified at a particular time, the one with the highest precedence is used.",
            "format": "double"
          },
          "type": {
            "type": "string",
            "description": "The Trading Position Container type:\\nS = standard price list which contains the base prices for the products in the store catalog\\nC = custom price list which specifies the list of products and their customized prices\\nE = external price list imported from an external system. The external price list specifies the list of products and their customized prices.\\nThe difference between external price list and custom price list is that the former allows the user interface to only pass any updates to the server, and does not need to send the entire price list definition."
          },
          "flags": {
            "type": "integer",
            "description": "This column contains the following bit flag indicating special processing to be performed by task commands that find prices for customers- \\n1 = restricted. To use price lists in this price list container, the customer must be in one of the associated MemberGroups. The associated MemberGroups are recognized by the Store as customer groups (see MGPTRDPSCN and STOREMBRGP). Use the TermAndCondition and Participant objects to limit the use of TradingPositionContainers to certain customers.No other bit flags can be stored in this column. This column is deprecated and is provided for backward compatibility only.",
            "format": "int32"
          },
          "links": {
            "type": "object",
            "properties": {
              "offers": {
                "type": "object",
                "properties": {
                  "href": {
                    "type": "string",
                    "description": "The URL of the link."
                  }
                },
                "description": ""
              },
              "self": {
                "type": "object",
                "properties": {
                  "href": {
                    "type": "string",
                    "description": "The URL of the link."
                  }
                },
                "description": ""
              }
            },
            "description": "Links to related resources."
          }
        },
        "description": "The price list. An offer is part of a trading position container, which is owned by a member. A trading position container contains trading positions. The position container can be made available to all customers, or to only customers in certain groups. To make the container available to customers use the trading agreements or contracts, and the terms and conditions in the contracts. Under a contract, a trading position container is a price business object that can be referenced by multiple price business policies. The container, as a price business object, can be shared by a store or all stores in a store group. A trading position container is also referred to as a price list. In some business models, you can have multiple standard price lists, which could be based on either cost, or on list prices."
      },
      "PriceListCollection": {
        "type": "object",
        "required": [
          "count"
        ],
        "properties": {
          "count": {
            "type": "integer",
            "description": "The total number of items.",
            "format": "int64"
          },
          "href": {
            "type": "string",
            "description": "The URL of the link.",
            "format": "uri"
          },
          "items": {
            "type": "array",
            "description": "The items.",
            "items": {
              "$ref": "#/components/schemas/PriceItems"
            }
          }
        },
        "description": "A collection of price lists."
      },
      "Offer": {
        "type": "object",
        "required": [
          "id",
          "catalogEntryId"
        ],
        "properties": {
          "id": {
            "type": "string",
            "description": "The Offer ID."
          },
          "startDate": {
            "type": "string",
            "description": "The start of the time range during which this Offer is effective. This is a valid ISO 8601 date 2018-05-29T11:00:00Z.",
            "format": "date-time"
          },
          "catalogEntryId": {
            "type": "string",
            "description": "The catalog entry offered for sale. Please see the catalog entry data API for details."
          },
          "endDate": {
            "type": "string",
            "description": "The end of the time range during which this Offer is effective. This is a valid ISO 8601 date 2018-05-29T11:00:00Z.",
            "format": "date-time"
          },
          "precedence": {
            "type": "number",
            "description": "When more than one Offer is effective at a particular time, the one with the highest precedence is used.",
            "format": "double"
          },
          "published": {
            "type": "integer",
            "description": "Describes whether or not the offer has been published as follows: \\n0 = not published (temporarily disabled).\\n1 = published.\\n2 = marked for deletion (and not published).",
            "format": "int32"
          },
          "updatedDate": {
            "type": "string",
            "description": "The last time this Offer was updated.",
            "format": "date-time"
          },
          "minimumQuantity": {
            "type": "number",
            "description": "The minimum quantity that can be purchased in a single Order under this Offer.",
            "format": "double"
          },
          "maximumQuantity": {
            "type": "number",
            "description": "The maximum quantity that can be purchased in a single Order under this Offer.",
            "format": "double"
          },
          "field1": {
            "type": "string",
            "description": "A customizable field."
          },
          "field2": {
            "type": "string",
            "description": "A customizable field."
          },
          "flags": {
            "type": "integer",
            "description": "A field reserved for internal use only.",
            "format": "int32"
          },
          "identifier": {
            "type": "integer",
            "description": "A number that uniquely identifies this Offer along with its specified catalog entry and price list identifier.",
            "format": "int64"
          },
          "quantityUnit": {
            "type": "string",
            "description": "A unit of measure for minimumQuantity and maximumQuantity. If the value is NULL, then the minimumQuantity and maximumQuantity are multiplied by nominal quantity for a product, used for pricing and the unit of measure of the results."
          },
          "priceListId": {
            "type": "integer",
            "description": "The trading position container or price list this Offer is part of.  Please see the trading position container data API for details.",
            "format": "int64"
          },
          "links": {
            "type": "object",
            "properties": {
              "prices": {
                "type": "object",
                "properties": {
                  "href": {
                    "type": "string",
                    "description": "The URL of the link."
                  }
                },
                "description": ""
              },
              "descriptions": {
                "type": "object",
                "properties": {
                  "href": {
                    "type": "string",
                    "description": "The URL of the link."
                  }
                },
                "description": ""
              },
              "self": {
                "type": "object",
                "properties": {
                  "href": {
                    "type": "string",
                    "description": "The URL of the link."
                  }
                },
                "description": ""
              }
            },
            "description": "Links to related resources."
          }
        },
        "description": "The offer."
      },
      "OfferCollection": {
        "type": "object",
        "required": [
          "count"
        ],
        "properties": {
          "count": {
            "type": "integer",
            "description": "The total number of items.",
            "format": "int64"
          },
          "items": {
            "type": "array",
            "description": "The items.",
            "items": {
              "$ref": "#/components/schemas/Offer"
            }
          }
        },
        "description": "A collection of offers."
      },
      "PriceListCatalogEntryCollection": {
        "type": "object",
        "properties": {
          "count": {
            "type": "integer",
            "description": "The total number of items.",
            "format": "int32"
          },
          "items": {
            "type": "array",
            "description": "The items.",
            "items": {
              "$ref": "#/components/schemas/PriceListCatalogEntry"
            }
          }
        },
        "description": "A collection of price list catalog entries."
      },
      "PriceListCatalogEntry": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "The catalog entry ID."
          },
          "priceListId": {
            "type": "string",
            "description": "The price list ID."
          },
          "partNumber": {
            "type": "string",
            "description": "The catalog entry part number."
          },
          "type": {
            "type": "string",
            "description": "The catalog entry type."
          },
          "name": {
            "type": "string",
            "description": "The name of the catalog entry."
          },
          "description": {
            "type": "string",
            "description": "The short description of the catalog entry."
          },
          "offers": {
            "type": "array",
            "description": "The catalog entry offers in the price list.",
            "items": {
              "$ref": "#/components/schemas/PriceListCatalogEntryOffer"
            }
          },
          "defaultOffers": {
            "type": "array",
            "description": "The default catalog entry offers from the default price list for the store.",
            "items": {
              "$ref": "#/components/schemas/PriceListCatalogEntryOffer"
            }
          }
        },
        "description": "The price list catalog entry."
      },
      "PriceListCatalogEntryOffer": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "The offer ID."
          },
          "identifier": {
            "type": "integer",
            "description": "A number that uniquely identifies this Offer along with its specified catalog entry and price list identifier.",
            "format": "int64"
          },
          "minimumQuantity": {
            "type": "number",
            "description": "The minimum quantity that can be purchased in a single Order under this Offer.",
            "format": "double"
          },
          "maximumQuantity": {
            "type": "number",
            "description": "The maximum quantity that can be purchased in a single Order under this Offer.",
            "format": "double"
          },
          "prices": {
            "type": "array",
            "description": "The prices of the catalog entry offers in the price list.",
            "items": {
              "$ref": "#/components/schemas/PriceListCatalogEntryOfferPrice"
            }
          }
        },
        "description": "The price list catalog entry offer."
      },
      "PriceListCatalogEntryOfferPrice": {
        "type": "object",
        "properties": {
          "currency": {
            "type": "string",
            "description": "The standard ISO currency code for the offer"
          },
          "price": {
            "type": "number",
            "description": "The offer price in the currency."
          }
        },
        "description": "The price list catalog entry offer."
      }
    },
    "securitySchemes": {
      "basicAuth": {
        "type": "http",
        "scheme": "basic"
      }
    }
  },
  "security": [
    {
      "basicAuth": []
    }
  ],
  "x-components": {}
}
