Skip to content

OpenAPI 3.0 JSON schemas. Files are automatically synced to the VTEX Developer Portal.

Notifications You must be signed in to change notification settings

vtex/openapi-schemas

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

openapi-schemas

This documentation comprises VTEX's public APIs as OpenAPI 3.0 JSON schemas. Files are automatically synced with VTEX's Developer Portal API Reference page and can be imported to Postman following these instructions.

Contributing with the documentation

Please check our Contributing Guide for more information about how to contribute with this repository.

Code of Conduct

Please read our Code of Conduct before contributing.

VTEX APIs

  • Antifraud Provider API Swagger Validator
  • Catalog API Seller Portal Swagger Validator
  • Catalog API Swagger Validator
  • Checkout API Swagger Validator
  • Customer Credit API Swagger Validator
  • Data Subject Rights API Swagger Validator
  • GiftCard Hub API Swagger Validator
  • GiftCard API Swagger Validator
  • GiftCard Provider Protocol Swagger Validator
  • Headless CMS API Swagger Validator
  • Intelligent Search API Swagger Validator
  • Intelligent Search Events API - Headless Swagger Validator
  • Legacy CMS Portal API Swagger Validator
  • License Manager API Swagger Validator
  • Logistics API Swagger Validator
  • Marketplace APIs - Sent Offers Swagger Validator
  • Marketplace APIs - Suggestions Swagger Validator
  • Marketplace Protocol - External Marketplace Mapper Swagger Validator
  • Marketplace Protocol - External Marketplace Orders Swagger Validator
  • Marketplace Protocol - External Seller Fulfillment Swagger Validator
  • Marketplace Protocol - External Seller Marketplace Swagger Validator
  • Master Data API - v1 Swagger Validator
  • Master Data API - v2 Swagger Validator
  • Message Center API Swagger Validator
  • Orders API Swagger Validator
  • Orders API (PII compliant) Swagger Validator
  • Payment Provider Protocol Swagger Validator
  • Payments Gateway API Swagger Validator
  • Policies System API Swagger Validator
  • Pricing API Swagger Validator
  • Pricing Hub Swagger Validator
  • Profile System API Swagger Validator
  • Promotions & Taxes API - v2 Swagger Validator
  • Promotions & Taxes API Swagger Validator
  • Recurrence (v1 - deprecated) Swagger Validator
  • Reviews and Ratings API Swagger Validator
  • SKU Bindings API Swagger Validator
  • Search API Swagger Validator
  • Session Manager API Swagger Validator
  • Subscriptions (v2 - deprecated) Swagger Validator
  • Subscriptions (v3) Swagger Validator
  • VTEX Tracking API Swagger Validator
  • VTEX Do API Swagger Validator
  • VTEX ID API Swagger Validator
  • VTEX Shipping Network API Swagger Validator

Requisites

Before contributing to this repository, read the following requisites.

Servers

OpenAPI describes the full endpoint for accessing the API as {server URL} + {endpoint path} + {path parameters}.

Example: an endpoint with /api/getResults as the path, https://example.com as the URL in the server object and no parameters will send requests to the https://example.com/api/getResults URL.

Example - servers object:

"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"
            }
        }
    }
],

The servers key contains an array of objects.

Authentication

Security schemes

Security schemes describe autentication types that are available in the API. You can check the all the available options in the Security Scheme Specification.

They should be added inside the components object.

The security schemes we use are:

"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."
    }
}

Security requirement

If defined inside the Open API schema, the security object will define the required security schemes for all endpoints. This specifies that requests should have the X-VTEX-API-AppKey and X-VTEX-API-AppToken pair or VtexIdClientAutCookie as part of the request header.

If defined inside an endpoint object, the security object will define the security scheme for that specific endpoint.

The security object we use at VTEX is:

"security": [
        {
            "appKey": [],
            "appToken": []
        },
        {
            "VtexIdclientAutCookie": []
        }
    ]

Adding a new file

After creating a file for a new API reference in this repository, read this step-by-step to publish it on our Developer Portal.