VTEX Legacy CMS Portal API

The VTEX Legacy CMS Portal API provides access to the classic VTEX CMS system used in traditional VTEX stores. It enables managing HTML templates, site structure, shelves, and custom pages within the legacy CMS portal.

OpenAPI Specification

vtex-legacy-cms-portal-openapi-original.yml Raw ↑
openapi: 3.0.0
info:
  title: VTex Legacy CMS Portal API
  description: "[CMS (Content Management System)](https://help.vtex.com/en/tracks/cms--2YcpgIljVaLVQYMzxQbc3z/6OCY6S9tqBXPD5mgpbBInC) is a feature dedicated to manage content in a constant and practical manner. With the Legacy CMS Portal API, you will be able to update your website internet communication protocol.\r\n\r\n## Index\r\n\r\n### Change URI Schema\r\n\r\n- `PUT` [Update all account's websites internet communication protocol](https://developers.vtex.com/docs/api-reference/legacy-cms-portal-api#put-/api/catalog_system/pvt/virtualfolder/changeurischema/-protocol-)\r\n- `PUT` [Update specific website comunication protocol](https://developers.vtex.com/docs/api-reference/legacy-cms-portal-api#put-/api/catalog_system/pvt/virtualfolder/site/-websiteId-/changeurischema/-protocol-)"
  contact: {}
  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
components:
  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.'
  parameters:
    Content-Type:
      name: Content-Type
      in: header
      description: Type of the content being sent.
      required: true
      style: simple
      schema:
        type: string
        example: application/json
    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
        example: application/json
paths:
  /api/catalog_system/pvt/virtualfolder/changeurischema/{protocol}:
    put:
      tags:
        - Change URI Schema
      summary: VTex Update all account's websites internet communication protocol
      description: "Updates all account's websites protocols to `HTTP` or `HTTPS`.\r\n\r\n## Permissions\r\n\r\nAny user or [application key](https://developers.vtex.com/docs/guides/api-authentication-using-application-keys) must have at least one of the appropriate [License Manager resources](https://help.vtex.com/en/tutorial/license-manager-resources--3q6ztrC8YynQf6rdc6euk3) 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:\r\n\r\n| **Product** | **Category** | **Resource** |\r\n| --------------- | ----------------- | ----------------- |\r\n| Catalog | Configuration | **CMS Management** |\r\n\r\nThere are no applicable [predefined roles](https://help.vtex.com/en/tutorial/predefined-roles--jGDurZKJHvHJS13LnO7Dy) for this resource list. You must [create a custom role](https://help.vtex.com/en/tutorial/roles--7HKK5Uau2H6wxE1rH5oRbc#creating-a-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](https://developers.vtex.com/docs/guides/authentication).\r\n\r\n>❗ To prevent integrations from having excessive permissions, consider the [best practices for managing app keys](https://help.vtex.com/en/tutorial/best-practices-application-keys--7b6nD1VMHa49aI5brlOvJm) when assigning License Manager roles to integrations."
      operationId: Changeentireaccount(allwebsites)
      parameters:
        - name: protocol
          in: path
          description: Internet communication protocol, it can be `HTTP` or `HTTPS`.
          required: true
          style: simple
          schema:
            type: string
            example: https
        - $ref: '#/components/parameters/Content-Type'
        - $ref: '#/components/parameters/Accept'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                title: Request Status
                description: Message indicating that the request was successful.
                type: string
                example: OK
      deprecated: false
  /api/catalog_system/pvt/virtualfolder/site/{websiteId}/changeurischema/{protocol}:
    put:
      tags:
        - Change URI Schema
      summary: VTex Update specific website comunication protocol
      description: "Updates a specific website protocol to `HTTP` or `HTTPS`.\r\n\r\n## Permissions\r\n\r\nAny user or [application key](https://developers.vtex.com/docs/guides/api-authentication-using-application-keys) must have at least one of the appropriate [License Manager resources](https://help.vtex.com/en/tutorial/license-manager-resources--3q6ztrC8YynQf6rdc6euk3) 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:\r\n\r\n| **Product** | **Category** | **Resource** |\r\n| --------------- | ----------------- | ----------------- |\r\n| Catalog | Configuration | **CMS Management** |\r\n\r\nThere are no applicable [predefined roles](https://help.vtex.com/en/tutorial/predefined-roles--jGDurZKJHvHJS13LnO7Dy) for this resource list. You must [create a custom role](https://help.vtex.com/en/tutorial/roles--7HKK5Uau2H6wxE1rH5oRbc#creating-a-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](https://developers.vtex.com/docs/guides/authentication).\r\n\r\n>❗ To prevent integrations from having excessive permissions, consider the [best practices for managing app keys](https://help.vtex.com/en/tutorial/best-practices-application-keys--7b6nD1VMHa49aI5brlOvJm) when assigning License Manager roles to integrations."
      operationId: Changespecificwebsite
      parameters:
        - name: websiteId
          in: path
          description: Specific website ID.
          required: true
          style: simple
          schema:
            type: string
            example: 292c47c7-0b81-48f9-a5a0-dcf240100884
        - name: protocol
          in: path
          description: Internet communication protocol, it can be `HTTP` or `HTTPS`.
          required: true
          style: simple
          schema:
            type: string
            example: https
        - $ref: '#/components/parameters/Content-Type'
        - $ref: '#/components/parameters/Accept'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                title: Request Status
                description: Message indicating that the request was successful.
                type: string
                example: OK
      deprecated: false
tags:
  - name: Change URI Schema
    description: Changes CMS URI
security:
  - appKey: []
    appToken: []