openapi: 3.0.0 info: title: VTex SKU Bindings API contact: {} version: '1.0' servers: - url: https://{accountName}.{environment}.com.br/api description: VTEX server URL. variables: accountName: description: Name of the VTEX account. Used as part of the URL. default: apiexamples environment: description: Environment to use. Used as part of the URL. enum: - vtexcommercestable default: vtexcommercestable paths: /catalog/pvt/skusellers/{skuId}: get: tags: - SKU Bindings summary: VTex Get SKU Bindings by SKU ID description: "Retrieves SKU Bindings details by SKU ID.\r\n\r\n## Response body example\r\n\r\n```json\r\n[\r\n {\r\n \"Id\": 48,\r\n \"SellerId\": \"cosmetics1\",\r\n \"StockKeepingUnitId\": 1,\r\n \"SellerSkuId\": \"42\",\r\n \"IsActive\": true,\r\n \"LastUpdateDate\": \"2020-10-21T19:13:00.657\",\r\n \"SalesPolicy\": 0\r\n }\r\n]\r\n```" operationId: GetbySkuId parameters: - name: Content-Type in: header description: Describes the type of the content being sent. required: true style: simple schema: type: string default: application/json - name: Accept in: header description: HTTP Client Negotiation _Accept_ Header. Indicates the types of responses the client can understand. required: true style: simple schema: type: string default: application/json - name: skuId in: path description: SKU's unique identifier in the marketplace. required: true style: simple schema: type: string example: '1' responses: '200': description: OK content: application/json: schema: type: array description: Array containing objects with information about each SKU Binding. items: type: object description: Object with information about an SKU Binding. properties: Id: type: integer format: int32 description: SKU Binding ID. SellerId: type: string description: ID that identifies the seller in the marketplace. It can be the same as the seller name or a unique number. Check the **Sellers management** section in the Admin to get the correct ID. StockKeepingUnitId: type: integer format: int32 description: SKU ID in the VTEX marketplace. SellerSkuId: type: string description: SKU seller ID. IsActive: type: boolean description: Defines if the SKU binding is active. LastUpdateDate: type: string description: Date when the SKU binding was updated for the last time, in UTC format. SalesPolicy: type: integer format: int32 description: Sales policy ID. example: - Id: 48 SellerId: cosmetics1 StockKeepingUnitId: 1 SellerSkuId: '42' IsActive: true LastUpdateDate: '2020-10-21T19:13:00.657' SalesPolicy: 0 deprecated: false /sku-binding/pvt/skuseller/admin: get: tags: - SKU Bindings summary: VTex Get SKU Bindings information description: "Retrieves SKU Bindings administrative information using optional query params `sellerId`, `skuId`, `sellerSkuId` and `IsActive` to filter results and `size` to restrict the amount of results. \r\n\r\n > ℹ This path is an updated version of `/api/catalog_system/pvt/skuseller/admin`.\r\n\r\n## Response body example\r\n\r\n```json\r\n[\r\n {\r\n \"IsPersisted\": true,\r\n \"IsRemoved\": false,\r\n \"SkuSellerId\": 1,\r\n \"UpdateDate\": \"2019-12-04T01:56:00.673Z\",\r\n \"RequestedUpdateDate\": null,\r\n \"SellerStockKeepingUnitId\": \"12\",\r\n \"SellerId\": \"cosmetics1\",\r\n \"StockKeepingUnitId\": 25,\r\n \"IsActive\": true\r\n }\r\n]\r\n```" operationId: Getpagedadmin parameters: - name: sellerId in: query description: ID that identifies the seller in the marketplace. It can be the same as the seller name or a unique number. Check the **Sellers management** section in the Admin to get the correct ID. required: false style: form explode: true schema: type: string example: vtxkfj7352 - name: skuId in: query description: SKU's unique identifier in the marketplace. required: false style: form explode: true schema: type: string example: '1' - name: sellerSkuId in: query description: SKU ID in the seller's store. required: false style: form explode: true schema: type: string example: '71' - name: isActive in: query description: Defines if the SKU binding is active. required: false style: form explode: true schema: type: boolean example: true - name: size in: query description: Amount of results. required: false style: form explode: true schema: type: string example: '1' - name: Content-Type in: header description: Describes the type of the content being sent. required: true style: simple schema: type: string default: application/json - name: Accept in: header description: HTTP Client Negotiation _Accept_ Header. Indicates the types of responses the client can understand. required: true style: simple schema: type: string default: application/json responses: '200': description: OK content: application/json: schema: type: object properties: IsPersisted: type: boolean description: Defines if the seller is persisted. IsRemoved: type: boolean description: Defines if the seller is removed. SkuSellerId: type: integer format: int32 description: SKU Binding ID. UpdateDate: type: string description: Date when the SKU binding was updated for the last time, in UTC format. RequestedUpdateDate: type: string description: Date when an SKU binding update was requested for the last time, in UTC format. nullable: true SellerStockKeepingUnitId: type: string description: SKU ID in the seller's store. SellerId: type: string description: ID that identifies the seller in the marketplace. It can be the same as the seller name or a unique number. Check the **Sellers management** section in the Admin to get the correct ID. StockKeepingUnitId: type: integer format: int32 description: SKU ID in the VTEX marketplace. IsActive: type: boolean description: Defines if the SKU binding is active. example: - IsPersisted: true IsRemoved: false SkuSellerId: 102 UpdateDate: '2021-04-12T20:06:59.413Z' RequestedUpdateDate: SellerStockKeepingUnitId: '71' SellerId: vtxkfj7352 StockKeepingUnitId: 1 IsActive: true deprecated: false /sku-binding/pvt/skuseller/{sellerId}/{sellerSkuId}: get: tags: - SKU Bindings summary: VTex Get details of a seller's SKU description: "Retrieves the details of a seller's SKU given a seller ID and the SKU ID in the seller's store. \r\n\r\n > ℹ This path is an updated version of `/api/catalog_system/pvt/skuseller/{sellerId}/{sellerSkuId}`.\r\n\r\n## Response body example\r\n\r\n```json\r\n{\r\n \"IsPersisted\": true,\r\n \"IsRemoved\": false,\r\n \"SkuSellerId\": 102,\r\n \"UpdateDate\": \"2021-04-12T20:06:59.413Z\",\r\n \"RequestedUpdateDate\": null,\r\n \"SellerStockKeepingUnitId\": \"71\",\r\n \"SellerId\": \"vtxkfj7352\",\r\n \"StockKeepingUnitId\": 1,\r\n \"IsActive\": true\r\n}\r\n```" operationId: GetSKUseller parameters: - name: Content-Type in: header description: Describes the type of the content being sent. required: true style: simple schema: type: string default: application/json - name: Accept in: header description: HTTP Client Negotiation _Accept_ Header. Indicates the types of responses the client can understand. required: true style: simple schema: type: string default: application/json - name: sellerId in: path description: ID that identifies the seller in the marketplace. It can be the same as the seller name or a unique number. Check the **Sellers management** section in the Admin to get the correct ID. required: true style: simple schema: type: string example: '101' - name: sellerSkuId in: path description: SKU ID in the seller's store. required: true style: simple schema: type: string example: '1' responses: '200': description: OK content: application/json: schema: type: object required: - IsPersisted - IsRemoved - SkuSellerId - SellerId - StockKeepingUnitId - SellerStockKeepingUnitId - IsActive - UpdateDate - RequestedUpdateDate properties: IsPersisted: type: boolean description: Defines if the seller is persisted. IsRemoved: type: boolean description: Defines if the seller is removed. SkuSellerId: type: integer format: int32 description: SKU ID in the seller's store. UpdateDate: type: string description: Date when the SKU binding was updated for the last time, in UTC format. RequestedUpdateDate: type: string description: Date when an SKU binding update was requested for the last time, in UTC format. nullable: true SellerStockKeepingUnitId: type: string description: SKU seller ID. SellerId: type: string description: ID that identifies the seller in the marketplace. It can be the same as the seller name or a unique number. Check the **Sellers management** section in the Admin to get the correct ID. StockKeepingUnitId: type: integer format: int32 description: SKU ID in the VTEX marketplace. IsActive: type: boolean description: Defines if the SKU binding is active. example: IsPersisted: true IsRemoved: false SkuSellerId: 799 UpdateDate: '2018-10-11T04:52:42.1' RequestedUpdateDate: SellerStockKeepingUnitId: '502' SellerId: myseller StockKeepingUnitId: 50 IsActive: true deprecated: false put: tags: - SKU Bindings summary: VTex Bind a seller's SKU to another SKU description: "Associates a seller's SKU to another marketplace SKU.\r\n\r\n > ℹ This path is an updated version of `/api/catalog_system/pvt/skuseller/{sellerId}/{sellerSkuId}`.\r\n\r\n## Request body example\r\n\r\n```json\r\n{\r\n \"StockKeepingUnitId\": 1\r\n}\r\n```" operationId: Bindtoanothersku parameters: - name: Content-Type in: header description: Describes the type of the content being sent. required: true style: simple schema: type: string default: application/json - name: Accept in: header description: HTTP Client Negotiation _Accept_ Header. Indicates the types of responses the client can understand. required: true style: simple schema: type: string default: application/json - name: sellerId in: path description: ID that identifies the seller in the marketplace. It can be the same as the seller name or a unique number. Check the **Sellers management** section in the Admin to get the correct ID. required: true style: simple schema: type: string example: '101' - name: sellerSkuId in: path description: SKU ID in the seller's store. required: true style: simple schema: type: string example: '1' requestBody: description: Request body content: application/json: schema: required: - StockKeepingUnitId type: object properties: StockKeepingUnitId: type: integer format: int32 description: SKU ID in the marketplace. example: 1 responses: '204': description: No Content deprecated: false /sku-binding/pvt/skuseller/list/bysellerId/{sellerId}: get: tags: - SKU Bindings summary: VTex Get all SKU Bindings by Seller ID description: "Retrieves a list of SKU Bindings given a specific Seller ID. \r\n\r\n > ℹ This path is an updated version of `/api/catalog_system/pvt/skuseller/list/bysellerId/{sellerId}`.\r\n\r\n## Response body example\r\n\r\n```json\r\n[\r\n {\r\n \"SellerStockKeepingUnitId\": \"24\",\r\n \"FreightCommissionPercentage\": null,\r\n \"ProductCommissionPercentage\": null,\r\n \"SellerId\": \"vtxkfj7352\",\r\n \"StockKeepingUnitId\": 121,\r\n \"IsActive\": true\r\n }\r\n]\r\n```" operationId: GetallbySellerId parameters: - name: Content-Type in: header description: Describes the type of the content being sent. required: true style: simple schema: type: string default: application/json - name: Accept in: header description: HTTP Client Negotiation _Accept_ Header. Indicates the types of responses the client can understand. required: true style: simple schema: type: string default: application/json - name: sellerId in: path description: ID that identifies the seller in the marketplace. It can be the same as the seller name or a unique number. Check the **Sellers management** section in the Admin to get the correct ID. required: true style: simple schema: type: string example: vtxkfj7352 responses: '200': description: OK content: application/json: schema: type: array items: type: object properties: SellerStockKeepingUnitId: type: string description: SKU ID in the seller's store. FreightCommissionPercentage: type: number description: The percentage that must be filled in as agreed between the marketplace and the seller. nullable: true ProductCommissionPercentage: type: number description: 'The percentage that must be filled in as agreed between the marketplace and the seller. If there is no such commission, please fill in the field with the value: `0.00`.' nullable: true SellerId: type: string description: ID that identifies the seller in the marketplace. It can be the same as the seller name or a unique number. Check the **Sellers management** section in the Admin to get the correct ID. StockKeepingUnitId: type: integer format: int32 description: SKU ID in the marketplace. IsActive: type: boolean description: Defines if the SKU binding is active. example: SellerStockKeepingUnitId: '24' FreightCommissionPercentage: ProductCommissionPercentage: SellerId: vtxkfj7352 StockKeepingUnitId: 121 IsActive: true deprecated: false /sku-binding/pvt/skuseller/paged/sellerid/{sellerId}: get: tags: - SKU Bindings summary: VTex Get paged SKU Bindings by Seller ID description: "Retrieves a paged list of SKU Bindings given a specific Seller ID. \r\n\r\n > ℹ This path is an updated version of `/api/catalog_system/pvt/skuseller/paged/sellerid/{sellerId}`.\r\n\r\n## Response body example\r\n\r\n```json\r\n[\r\n {\r\n \"SellerId\": \"vtxkfj7352\",\r\n \"StockKeepingUnitId\": 121,\r\n \"SellerStockKeepingUnitId\": \"24\",\r\n \"IsActive\": true,\r\n \"FreightCommissionPercentage\": null,\r\n \"ProductCommissionPercentage\": null\r\n },\r\n {\r\n \"SellerId\": \"vtxkfj7352\",\r\n \"StockKeepingUnitId\": 14,\r\n \"SellerStockKeepingUnitId\": \"60\",\r\n \"IsActive\": true,\r\n \"FreightCommissionPercentage\": null,\r\n \"ProductCommissionPercentage\": null\r\n }\r\n]\r\n```" operationId: GetpagedbySellerId parameters: - name: page in: query description: Page number. required: true style: form explode: true schema: type: string example: '1' - name: size in: query description: Amount of results per page. required: true style: form explode: true schema: type: string example: '2' - name: Content-Type in: header description: Describes the type of the content being sent. required: true style: simple schema: type: string default: application/json - name: Accept in: header description: HTTP Client Negotiation _Accept_ Header. Indicates the types of responses the client can understand. required: true style: simple schema: type: string default: application/json - name: sellerId in: path description: ID that identifies the seller in the marketplace. It can be the same as the seller name or a unique number. Check the **Sellers management** section in the Admin to get the correct ID. required: true style: simple schema: type: string example: vtxkfj7352 responses: '200': description: OK content: application/json: schema: type: array items: type: object properties: SellerId: type: string description: ID that identifies the seller in the marketplace. It can be the same as the seller name or a unique number. Check the **Sellers management** section in the Admin to get the correct ID. StockKeepingUnitId: type: integer format: int32 description: SKU ID in the marketplace. SellerStockKeepingUnitId: type: string description: SKU ID in the seller's store. IsActive: type: boolean description: Defines if the SKU binding is active. FreightCommissionPercentage: type: number description: The percentage that must be filled in as agreed between the marketplace and the seller. nullable: true ProductCommissionPercentage: type: number description: 'The percentage that must be filled in as agreed between the marketplace and the seller. If there is no such commission, please fill in the field with the value: `0.00`.' nullable: true example: SellerId: vtxkfj7352 StockKeepingUnitId: 121 SellerStockKeepingUnitId: '24' IsActive: true FreightCommissionPercentage: ProductCommissionPercentage: example: - SellerId: vtxkfj7352 StockKeepingUnitId: 121 SellerStockKeepingUnitId: '24' IsActive: true FreightCommissionPercentage: ProductCommissionPercentage: - SellerId: vtxkfj7352 StockKeepingUnitId: 14 SellerStockKeepingUnitId: '60' IsActive: true FreightCommissionPercentage: ProductCommissionPercentage: deprecated: false /sku-binding/pvt/skuseller/changenotification/{skuId}: post: tags: - SKU Bindings summary: VTex Change Notification with SKU ID description: "The seller is responsible for suggesting new SKUs to be sold in the VTEX marketplace and also for informing the marketplace about changes in their SKUs that already exist in the marketplace. Both actions start with a catalog notification, which is made by this request.\n\nWith this notification, the seller is telling the marketplace that something has changed about a specific SKU, like price or inventory, or that this is a new SKU that the seller would like to offer to the marketplace.\n\nThe body of the request should be empty.\r\n\r\n > ℹ This path is an updated version of `/api/catalog_system/pvt/skuseller/changenotification/{skuId}`." operationId: ChangeNotification parameters: - name: Content-Type in: header description: Describes the type of the content being sent. required: true style: simple schema: type: string default: application/json - name: Accept in: header description: HTTP Client Negotiation _Accept_ Header. Indicates the types of responses the client can understand. required: true style: simple schema: type: string default: application/json - name: skuId in: path description: A string that identifies the SKU in the marketplace. This is the ID that the marketplace will use to look for the SKU whose change the seller wants to inform. If the marketplace finds this ID, it responds with status code `200`. Otherwise, it responds with status code `404`. required: true style: simple schema: type: string example: '10' responses: '200': description: OK '400': description: Bad Request '403': description: Forbidden '404': description: Not found '429': description: Too many requests deprecated: false /sku-binding/pvt/skuseller/changenotification/{sellerId}/{sellerSkuId}: post: tags: - SKU Bindings summary: VTex Change Notification with Seller ID and Seller SKU ID description: "The seller is responsible for suggesting new SKUs to be sold in the VTEX marketplace and also for informing the marketplace about changes in their SKUs that already exist in the marketplace. Both actions start with a catalog notification, which is made by this request.\n\nWith this notification, the seller is telling the marketplace that something has changed about a specific SKU, like price or inventory, or that this is a new SKU that the seller would like to offer to the marketplace.\n\nThere are two information expected by the marketplace in this request: the `sellerId`, which identifies the seller, and the `sellerSkuId`, which identifies the binding of the seller with the SKU.\n\nBoth information are passed through the request URL. The body of the request should be empty.\r\n > ℹ This path is an updated version of `/api/catalog_system/pvt/skuseller/changenotification/{sellerId}/{sellerSkuId}`.\r\n\r\n## Example\r\n\r\nLet's say your seller has the ID `123` in the marketplace and you want to inform the marketplace that has been a change in the SKU with ID `700`.\r\n\r\nIn this case, you would have to replace the `sellerId` parameter with the value `123` and the `skuId` parameter with the value `700`. The URL of the request would be the following.\r\n\r\n```\r\nhttps://{{accountName}}.vtexcommercestable.com.br/api/sku-binding/pvt/skuseller/changenotification/123/700\r\n```\r\n\r\n## Response codes\r\n\r\nThe following response codes are possible for this request.\r\n* 200: the SKU whose ID was informed in the URL already exists in the marketplace and was found. The marketplace can now proceed with a fulfillment simulation in order to get updated information about this SKU's inventory and price.\r\n* 403: Failure in the authentication.\r\n* 404: the SKU was not found in the marketplace. The body of the response, in this case, should follow this format: \"Seller StockKeepingUnit `{{skuId}}` not found for this seller id `{{sellerId}}`. This means that the seller can now proceed with sending an offer to the marketplace in order to suggest that this SKU is sold there.\r\n* 429: Failure due to too many requests." parameters: - name: Content-Type in: header description: Describes the type of the content being sent. required: true style: simple schema: type: string default: application/json - name: Accept in: header description: HTTP Client Negotiation _Accept_ Header. Indicates the types of responses the client can understand. required: true style: simple schema: type: string default: application/json - name: sellerId in: path description: ID that identifies the seller in the marketplace. It can be the same as the seller name or a unique number. Check the **Sellers management** section in the Admin to get the correct ID. required: true style: simple schema: type: string example: '101' - name: sellerSkuId in: path description: ID of the binding of the seller with the SKU. required: true style: simple schema: type: string example: '1' responses: '200': description: OK '400': description: Bad Request '403': description: Forbidden '404': description: Not found '429': description: Too many requests deprecated: false /sku-binding/pvt/skuseller/insertion: post: tags: - SKU Bindings summary: VTex Insert SKU Binding description: "Creates an SKU Binding, associating a seller's SKU with a marketplace's SKU.\r\n\r\n > ℹ This path is an updated version of `/api/catalog_system/pvt/skuseller/insertion`." operationId: InsertSKUBinding parameters: - name: Content-Type in: header description: Describes the type of the content being sent. required: true style: simple schema: type: string default: application/json - name: Accept in: header description: HTTP Client Negotiation _Accept_ Header. Indicates the types of responses the client can understand. required: true style: simple schema: type: string default: application/json requestBody: description: Request body content: application/json: schema: required: - StockKeepingUnitId - IsActive - SellerId - SellerStockKeepingUnitId type: object properties: StockKeepingUnitId: type: integer format: int32 description: SKU ID in the marketplace. IsActive: type: boolean description: Defines if the SKU binding is active. SellerId: type: string description: ID that identifies the seller in the marketplace. It can be the same as the seller name or a unique number. Check the **Sellers management** section in the Admin to get the correct ID. SellerStockKeepingUnitId: type: string description: SKU seller ID. example: StockKeepingUnitId: 1 IsActive: true SellerId: vtxkfj7352 SellerStockKeepingUnitId: '71' required: true responses: '200': description: OK '400': description: Bad Request '409': description: Conflict deprecated: false /sku-binding/pvt/skuseller/activate/{sellerId}/{skuSellerId}: post: tags: - SKU Bindings summary: VTex Activate SKU Binding description: "Changes the status of an SKU Binding to active, setting `isActive` to `true`.\r\n\r\n > ℹ This path is an updated version of `/api/catalog_system/pvt/skuseller/activate/{sellerId}/{skuSellerId}`." operationId: ActivateSKUBinding parameters: - name: Content-Type in: header description: Describes the type of the content being sent. required: true style: simple schema: type: string default: application/json - name: Accept in: header description: HTTP Client Negotiation _Accept_ Header. Indicates the types of responses the client can understand. required: true style: simple schema: type: string default: application/json - name: sellerId in: path description: ID that identifies the seller in the marketplace. It can be the same as the seller name or a unique number. Check the **Sellers management** section in the Admin to get the correct ID. required: true style: simple schema: type: string example: vtxkfj7352 - name: skuSellerId in: path description: SKU ID in the seller's store. required: true style: simple schema: type: string example: '71' responses: '200': description: OK deprecated: false /sku-binding/pvt/skuseller/inactivate/{sellerId}/{skuSellerId}: post: tags: - SKU Bindings summary: VTex Deactivate SKU Binding description: "Changes the status of an SKU Binding to inactive, setting `isActive` to `false`.\r\n\r\n > ℹ This path is an updated version of `/api/catalog_system/pvt/skuseller/inactivate/{sellerId}/{skuSellerId}`." operationId: DeactivateSKUBinding parameters: - name: Content-Type in: header description: Describes the type of the content being sent. required: true style: simple schema: type: string default: application/json - name: Accept in: header description: HTTP Client Negotiation _Accept_ Header. Indicates the types of responses the client can understand. required: true style: simple schema: type: string default: application/json - name: sellerId in: path description: ID that identifies the seller in the marketplace. It can be the same as the seller name or a unique number. Check the **Sellers management** section in the Admin to get the correct ID. required: true style: simple schema: type: string example: vtxkfj7352 - name: skuSellerId in: path description: SKU ID in the seller's store. required: true style: simple schema: type: string example: '71' responses: '200': description: OK deprecated: false /sku-binding/pvt/skuseller/remove/{sellerId}/{sellerSkuId}: post: tags: - SKU Bindings summary: VTex Remove a seller's SKU Binding description: "Remove a seller's SKU binding, given the Seller ID and the SKU ID in the seller's store.\r\n\r\n > ℹ This path is an updated version of `/api/catalog_system/pvt/skuseller/remove/{sellerId}/{sellerSkuId}`." operationId: DeleteSKUsellerassociation parameters: - name: Content-Type in: header description: Describes the type of the content being sent. required: true style: simple schema: type: string default: application/json - name: Accept in: header description: HTTP Client Negotiation _Accept_ Header. Indicates the types of responses the client can understand. required: true style: simple schema: type: string default: application/json - name: sellerId in: path description: ID that identifies the seller in the marketplace. It can be the same as the seller name or a unique number. Check the **Sellers management** section in the Admin to get the correct ID. required: true style: simple schema: type: string example: vtxkfj7352 - name: sellerSkuId in: path description: SKU ID in the seller's store. required: true style: simple schema: type: string example: '71' responses: '200': description: OK deprecated: false security: - appKey: [] appToken: [] components: securitySchemes: appKey: type: apiKey in: header name: X-VTEX-API-AppKey appToken: type: apiKey in: header name: X-VTEX-API-AppToken tags: - name: SKU Bindings