VTEX SKU Specification API

The SKU Specification API from VTEX — 3 operation(s) for sku specification.

Business capability
Item Master Data Management BC-2370.10

Operations 6

GET /api/catalog/pvt/stockkeepingunit/{skuId}/specification VTex Get SKU specifications #
POST /api/catalog/pvt/stockkeepingunit/{skuId}/specification VTex Associate SKU specification #
PUT /api/catalog/pvt/stockkeepingunit/{skuId}/specification VTex Update SKU specification #
DELETE /api/catalog/pvt/stockkeepingunit/{skuId}/specification VTex Delete all SKU specifications #
DELETE /api/catalog/pvt/stockkeepingunit/{skuId}/specification/{specificationId} VTex Delete SKU specification #
PUT /api/catalog/pvt/stockkeepingunit/{skuId}/specificationvalue VTex Associate SKU specification using specification name and group name #

Documentation

📖
Documentation
https://developers.vtex.com/docs/guides/how-the-integration-protocol-between-vtex-and-antifraud-companies-works
📖
Documentation
https://developers.vtex.com/docs/guides/bulk-import-buyer-organizations-spreadsheet
📖
Documentation
https://developers.vtex.com/docs/guides/catalog-api-seller-portal-overview
📖
Documentation
https://developers.vtex.com/docs/guides/catalog-overview
📖
Documentation
https://developers.vtex.com/docs/guides/checkout-overview
📖
Documentation
https://help.vtex.com/en/tutorial/customer-credit-overview--1uIqTjWxIIIEW0COMg4uE0
📖
Documentation
https://help.vtex.com/en/tutorial/data-subject-rights--6imchxTx09icupKMbzHVIM
📖
Documentation
https://developers.vtex.com/docs/api-reference/do-api
📖
Documentation
https://developers.vtex.com/docs/guides/managing-vtex-gift-cards
📖
Documentation
https://developers.vtex.com/docs/guides/gift-card-integration-guide
📖
Documentation
https://developers.vtex.com/docs/guides/faststore/headless-cms-overview
📖
Documentation
https://developers.vtex.com/docs/api-reference/vtex-id-api
📖
Documentation
https://help.vtex.com/en/tracks/vtex-intelligent-search--19wrbB7nEQcmwzDPl1l4Cb/3qgT47zY08biLP3d5os3DG
📖
Documentation
https://developers.vtex.com/docs/apps/vtex.search@1.0.8
📖
Documentation
https://help.vtex.com/en/tracks/cms--2YcpgIljVaLVQYMzxQbc3z/1oN446gRGcR2s70RvBCAmj
📖
Documentation
https://developers.vtex.com/docs/guides/search-overview
📖
Documentation
https://help.vtex.com/en/tutorial/license-manager-resources--3q6ztrC8YynQf6rdc6euk3
📖
Documentation
https://developers.vtex.com/docs/guides/fulfillment
📖
Documentation
https://developers.vtex.com/docs/guides/marketplace-overview
📖
Documentation
https://developers.vtex.com/updates/release-notes/marketplace-protocol-documentation-update
📖
Documentation
https://developers.vtex.com/docs/guides/external-marketplace-integration-guide
📖
Documentation
https://developers.vtex.com/docs/guides/external-seller-integration-connector
📖
Documentation
https://developers.vtex.com/docs/guides/external-seller-integration-guide
📖
Documentation
https://help.vtex.com/en/tutorial/master-data--4otjBnR27u4WUIciQsmkAw
📖
Documentation
https://help.vtex.com/en/tutorial/understanding-the-message-center--tutorials_84
📖
Documentation
https://developers.vtex.com/docs/guides/orders-overview
📖
Documentation
https://developers.vtex.com/docs/guides/changes-in-vtex-features-behavior-to-handle-pii-data
📖
Documentation
https://help.vtex.com/en/tutorial/payment-provider-protocol--RdsT2spdq80MMwwOeEq0m
📖
Documentation
https://developers.vtex.com/docs/guides/payments-integration-guide
📖
Documentation
https://help.vtex.com/en/tutorial/vtex-pick-and-pack-last-mile--HN7WKV0xoq2ssVjsJlfzr
📖
Documentation
https://developers.vtex.com/docs/guides/vtex-io-documentation-policies
📖
Documentation
https://developers.vtex.com/docs/guides/pricing-hub
📖
Documentation
https://developers.vtex.com/docs/guides/pricing-overview
📖
Documentation
https://developers.vtex.com/docs/guides/profile-system
📖
Documentation
https://developers.vtex.com/docs/guides/promotions-overview
📖
Documentation
https://developers.vtex.com/docs/apps/vtex.reviews-and-ratings
📖
Documentation
https://developers.vtex.com/docs/guides/sent-offers-integration-guide-connectors
📖
Documentation
https://developers.vtex.com/docs/guides/sessions-system-overview
📖
Documentation
https://developers.vtex.com/docs/guides/vtex-shipping-network
📖
Documentation
https://help.vtex.com/en/tutorial/sku-bindings--1SmrVgNwjJX17hdqwLa0TX
📖
Documentation
https://developers.vtex.com/docs/guides/subscriptions
📖
Documentation
https://developers.vtex.com/docs/apps/vtex.search/suggestions
📖
Documentation
https://developers.vtex.com/docs/guides/vtex-tracking

Specifications

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/vtex-sku-specification-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

vtex-sku-specification-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: VTex Catalog SKU Specification API
  description: '> Check the new Catalog onboarding guide.'
  version: '1.0'
servers:
- url: https://{accountName}.{environment}.com.br
  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
security:
- appKey: []
  appToken: []
- VtexIdclientAutCookie: []
tags:
- name: SKU Specification
paths:
  /api/catalog/pvt/stockkeepingunit/{skuId}/specification:
    get:
      tags:
      - SKU Specification
      summary: VTex Get SKU specifications
      description: 'Retrieves information about an SKU''s specifications.


        ## Permissions


        Any user or application key must have at least one of the appropriate License Manager resources to be able to successfully run this request. Otherwise they will receive a status code `403` error. These are the applicable resources for this endpoint:


        | **Product** | **Category** | **Resource** |

        | --------------- | ----------------- | ----------------- |

        | Catalog | Content | **SKUs** |


        There are no applicable predefined roles for this resource list. You must create a custom role and add at least one of the resources above in order to use this endpoint. To learn more about machine authentication at VTEX, see Authentication overview.


        >❗ To prevent integrations from having excessive permissions, consider the best practices for managing app keys when assigning License Manager roles to integrations.'
      parameters:
      - $ref: '#/components/parameters/Content-Type'
      - $ref: '#/components/parameters/Accept'
      - name: skuId
        in: path
        required: true
        description: SKU's unique numerical identifier.
        schema:
          type: integer
          example: 1
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/SKUSpecificationResponse'
              example:
              - Id: 1505
                SkuId: 1234568387
                FieldId: 193
                FieldValueId: 360
                Text: Size 10
      operationId: getApiCatalogPvtStockkeepingunitBySkuIdSpecification
      x-operation-id-source: derived
    post:
      tags:
      - SKU Specification
      summary: VTex Associate SKU specification
      description: 'Associates a previously created specification to an SKU.


        ## Permissions


        Any user or application key must have at least one of the appropriate License Manager resources to be able to successfully run this request. Otherwise they will receive a status code `403` error. These are the applicable resources for this endpoint:


        | **Product** | **Category** | **Resource** |

        | --------------- | ----------------- | ----------------- |

        | Catalog | Content | **SKUs** |


        There are no applicable predefined roles for this resource list. You must create a custom role and add at least one of the resources above in order to use this endpoint. To learn more about machine authentication at VTEX, see Authentication overview.


        >❗ To prevent integrations from having excessive permissions, consider the best practices for managing app keys when assigning License Manager roles to integrations.'
      parameters:
      - $ref: '#/components/parameters/Content-Type'
      - $ref: '#/components/parameters/Accept'
      - name: skuId
        in: path
        required: true
        description: SKU's unique numerical identifier.
        schema:
          type: integer
          example: 1234568387
      requestBody:
        content:
          application/json:
            schema:
              type: object
              required:
              - FieldId
              properties:
                FieldId:
                  type: integer
                  description: Specification field ID.
                  example: 13
                FieldValueId:
                  type: integer
                  description: Specification value ID. Required only for `FieldTypeId` as `5`, `6` and `7`.
                  example: 101
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SKUSpecificationResponse'
              example:
                Id: 1505
                SkuId: 1234568387
                FieldId: 193
                FieldValueId: 360
                Text: Size 10
      operationId: postApiCatalogPvtStockkeepingunitBySkuIdSpecification
      x-operation-id-source: derived
    put:
      tags:
      - SKU Specification
      summary: VTex Update SKU specification
      description: 'Updates an existing specification on an existing SKU. This endpoint only updates the `FieldValueId`.


        ## Permissions


        Any user or application key must have at least one of the appropriate License Manager resources to be able to successfully run this request. Otherwise they will receive a status code `403` error. These are the applicable resources for this endpoint:


        | **Product** | **Category** | **Resource** |

        | --------------- | ----------------- | ----------------- |

        | Catalog | Content | **SKUs** |


        There are no applicable predefined roles for this resource list. You must create a custom role and add at least one of the resources above in order to use this endpoint. To learn more about machine authentication at VTEX, see Authentication overview.


        >❗ To prevent integrations from having excessive permissions, consider the best practices for managing app keys when assigning License Manager roles to integrations.'
      parameters:
      - $ref: '#/components/parameters/Content-Type'
      - $ref: '#/components/parameters/Accept'
      - name: skuId
        in: path
        required: true
        description: SKU's unique numerical identifier.
        schema:
          type: integer
          example: 21
      requestBody:
        content:
          application/json:
            schema:
              type: object
              required:
              - Id
              - FieldId
              - FieldValueId
              properties:
                Id:
                  type: integer
                  description: Specification and SKU association unique identifier. This field cannot be updated.
                  example: 65
                SkuId:
                  type: integer
                  description: SKU unique identifier. This field cannot be updated.
                  example: 21
                FieldId:
                  type: integer
                  description: Specification field unique identifier. This field cannot be updated.
                  example: 32
                FieldValueId:
                  type: integer
                  description: Specification value unique identifier. This field can only be updated with other values of the same `FieldId`.
                  example: 131
                Text:
                  type: string
                  description: Specification value name. This field is automatically updated if the `FieldValue` is updated. Otherwise, the value cannot be modified.
                  example: Red
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/SKUSpecificationResponse'
              example:
              - Id: 1505
                SkuId: 1234568387
                FieldId: 193
                FieldValueId: 360
                Text: Size 10
      operationId: putApiCatalogPvtStockkeepingunitBySkuIdSpecification
      x-operation-id-source: derived
    delete:
      tags:
      - SKU Specification
      summary: VTex Delete all SKU specifications
      description: 'Deletes all SKU specifications.


        ## Permissions


        Any user or application key must have at least one of the appropriate License Manager resources to be able to successfully run this request. Otherwise they will receive a status code `403` error. These are the applicable resources for this endpoint:


        | **Product** | **Category** | **Resource** |

        | --------------- | ----------------- | ----------------- |

        | Catalog | Content | **SKUs** |


        There are no applicable predefined roles for this resource list. You must create a custom role and add at least one of the resources above in order to use this endpoint. To learn more about machine authentication at VTEX, see Authentication overview.


        >❗ To prevent integrations from having excessive permissions, consider the best practices for managing app keys when assigning License Manager roles to integrations.'
      parameters:
      - $ref: '#/components/parameters/Content-Type'
      - $ref: '#/components/parameters/Accept'
      - name: skuId
        in: path
        required: true
        description: SKU's unique numerical identifier.
        schema:
          type: integer
          example: 1
      responses:
        '200':
          description: OK
      operationId: deleteApiCatalogPvtStockkeepingunitBySkuIdSpecification
      x-operation-id-source: derived
  /api/catalog/pvt/stockkeepingunit/{skuId}/specification/{specificationId}:
    delete:
      tags:
      - SKU Specification
      summary: VTex Delete SKU specification
      description: 'Deletes a specific SKU specification.


        ## Permissions


        Any user or application key must have at least one of the appropriate License Manager resources to be able to successfully run this request. Otherwise they will receive a status code `403` error. These are the applicable resources for this endpoint:


        | **Product** | **Category** | **Resource** |

        | --------------- | ----------------- | ----------------- |

        | Catalog | Content | **SKUs** |


        There are no applicable predefined roles for this resource list. You must create a custom role and add at least one of the resources above in order to use this endpoint. To learn more about machine authentication at VTEX, see Authentication overview.


        >❗ To prevent integrations from having excessive permissions, consider the best practices for managing app keys when assigning License Manager roles to integrations.'
      parameters:
      - $ref: '#/components/parameters/Content-Type'
      - $ref: '#/components/parameters/Accept'
      - name: skuId
        in: path
        required: true
        description: SKU's unique numerical identifier.
        schema:
          type: integer
          example: 1
      - name: specificationId
        in: path
        required: true
        description: Specification's unique numerical identifier.
        schema:
          type: integer
          example: 1
      responses:
        '200':
          description: OK
      operationId: deleteApiCatalogPvtStockkeepingunitBySkuIdSpecificationBySpecificationId
      x-operation-id-source: derived
  /api/catalog/pvt/stockkeepingunit/{skuId}/specificationvalue:
    put:
      tags:
      - SKU Specification
      summary: VTex Associate SKU specification using specification name and group name
      description: 'Associates a specification to an SKU using specification name and group name. Automatically creates the informed group, specification and values if they had not been created before.


        ## Permissions


        Any user or application key must have at least one of the appropriate License Manager resources to be able to successfully run this request. Otherwise they will receive a status code `403` error. These are the applicable resources for this endpoint:


        | **Product** | **Category** | **Resource** |

        | --------------- | ----------------- | ----------------- |

        | Catalog | Content | **SKUs** |


        There are no applicable predefined roles for this resource list. You must create a custom role and add at least one of the resources above in order to use this endpoint. To learn more about machine authentication at VTEX, see Authentication overview.


        >❗ To prevent integrations from having excessive permissions, consider the best practices for managing app keys when assigning License Manager roles to integrations.'
      parameters:
      - $ref: '#/components/parameters/Content-Type'
      - $ref: '#/components/parameters/Accept'
      - name: skuId
        in: path
        required: true
        description: SKU's unique numerical identifier.
        schema:
          type: integer
          example: 1
      requestBody:
        content:
          application/json:
            schema:
              type: object
              example:
                FieldName: Size
                GroupName: Sizes
                RootLevelSpecification: true
                FieldValues:
                - M
              required:
              - FieldName
              - GroupName
              - RootLevelSpecification
              - FieldValues
              properties:
                FieldName:
                  type: string
                  description: Specification name. Limited to 100 characters.
                  example: Material
                GroupName:
                  type: string
                  description: Group name.
                  example: Composition
                RootLevelSpecification:
                  type: boolean
                  description: Root level specification.
                  example: true
                FieldValues:
                  type: array
                  description: Array of specification values. SKU specifications must contain only one value.
                  example:
                  - M
                  items:
                    type: string
                    description: Specification value.
                    example: M
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                example:
                - Id: 418
                  SkuId: 5
                  FieldId: 29
                  FieldValueId: 76
                  Text: M
                type: array
                description: Array with information of all SKU specifications.
                items:
                  type: object
                  description: Object with information of the specification.
                  properties:
                    Id:
                      type: integer
                      description: ID of the association of the SKU and the specification.
                    SkuId:
                      type: integer
                      description: SKU ID.
                    FieldId:
                      type: integer
                      description: Specification field ID.
                    FieldValueId:
                      type: integer
                      description: Current specification value ID.
                    Text:
                      type: string
                      description: Current specification value text.
      operationId: putApiCatalogPvtStockkeepingunitBySkuIdSpecificationvalue
      x-operation-id-source: derived
components:
  parameters:
    Accept:
      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
    Content-Type:
      name: Content-Type
      in: header
      description: Type of the content being sent.
      required: true
      style: simple
      schema:
        type: string
        default: application/json
  schemas:
    SKUSpecificationResponse:
      type: object
      properties:
        Id:
          type: integer
          description: ID of the association of the specification and the SKU. This ID is used to update or delete the specification.
        SkuId:
          type: integer
          description: SKU ID.
        FieldId:
          type: integer
          description: Specification field ID.
        FieldValueId:
          type: integer
          description: Specification value ID. Required only for `FieldTypeId` as `5`, `6` and `7`.
        Text:
          type: string
          description: Value of specification. Only for `FieldTypeId` different from `5`, `6` and `7`.
      example:
        Id: 1505
        SkuId: 1234568387
        FieldId: 193
        FieldValueId: 360
        Text: Size 10
  securitySchemes:
    appKey:
      type: apiKey
      in: header
      name: X-VTEX-API-AppKey
      description: Unique identifier of the [application key](https://developers.vtex.com/docs/guides/api-authentication-using-application-keys).
    appToken:
      type: apiKey
      in: header
      name: X-VTEX-API-AppToken
      description: Secret token of the [application key](https://developers.vtex.com/docs/guides/api-authentication-using-application-keys).
    VtexIdclientAutCookie:
      type: apiKey
      in: header
      name: VtexIdclientAutCookie
      description: '[User token](https://developers.vtex.com/docs/guides/api-authentication-using-user-tokens), valid for 24 hours.'