VTEX Cycles API

The Cycles API from VTEX — 3 operation(s) for cycles.

Operations 3

GET /api/rns/pub/cycles/{cycleId} VTex Get cycle details #
GET /api/rns/pub/cycles VTex List cycles #
POST /api/rns/pub/cycles/{cycleId}/retry VTex Retry cycle #

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-cycles-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-cycles-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: VTex Subscriptions API (v3) Cycles API
  description: 'A **Subscription** is a list of items (SKUs) tied to certain recurring purchase settings:


    - User profile

    - Address

    - Payment method

    - Frequency

    - Cycle


    Once you have configured subscriptions in your store, the Subscriptions API allows you to create, manage and monitor your customers'' subscriptions.


    !image


    To read more about the Subscriptions feature, check our article How Subscription works.'
  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
security:
- appKey: []
  appToken: []
tags:
- name: Cycles
paths:
  /api/rns/pub/cycles/{cycleId}:
    get:
      tags:
      - Cycles
      summary: VTex Get cycle details
      description: Retrieve a specific cycle by its ID.
      parameters:
      - name: cycleId
        in: path
        description: ID from the desired cycle.
        required: true
        schema:
          type:
          - string
          - 'null'
      - name: Content-Type
        in: header
        description: Type of the content being sent.
        required: true
        style: simple
        schema:
          type: string
          example: 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
          example: application/json
      responses:
        '200':
          description: OK
          content:
            text/plain:
              schema:
                $ref: '#/components/schemas/SubscriptionCycleResponse'
            application/json:
              schema:
                $ref: '#/components/schemas/SubscriptionCycleResponse'
            text/json:
              schema:
                $ref: '#/components/schemas/SubscriptionCycleResponse'
      operationId: getApiRnsPubCyclesByCycleId
      x-operation-id-source: derived
  /api/rns/pub/cycles:
    get:
      tags:
      - Cycles
      summary: VTex List cycles
      description: List cycles filtering by some arguments.
      parameters:
      - name: beginDate
        in: query
        description: Lower limit for the date of creation of the cycle
        schema:
          type:
          - string
          - 'null'
      - name: endDate
        description: Upper limit for the date of creation of the cycle
        in: query
        schema:
          type:
          - string
          - 'null'
      - name: subscriptionId
        description: Id from the subscription that generated the cycle
        in: query
        schema:
          type:
          - string
          - 'null'
      - name: customerEmail
        in: query
        description: Customer that owns the subscription. Defaults to the current logged user
        schema:
          type:
          - string
          - 'null'
      - name: status
        in: query
        description: Current cycle status
        schema:
          type:
          - string
          - 'null'
      - name: page
        in: query
        description: Page used for pagination
        schema:
          type: integer
          format: int32
          default: 1
      - name: size
        in: query
        description: Page size used for pagination
        schema:
          type: integer
          format: int32
          default: 15
      - name: Content-Type
        in: header
        description: Type of the content being sent.
        required: true
        style: simple
        schema:
          type: string
          example: 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
          example: application/json
      responses:
        '200':
          description: OK
          content:
            text/plain:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/SubscriptionCycleResponse'
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/SubscriptionCycleResponse'
            text/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/SubscriptionCycleResponse'
      operationId: getApiRnsPubCycles
      x-operation-id-source: derived
  /api/rns/pub/cycles/{cycleId}/retry:
    post:
      tags:
      - Cycles
      summary: VTex Retry cycle
      description: Every subscription order has an execution count called cycle, which determines the position of an order counting from when the shopper subscribed. This endpoint reruns a cycle that is currently in error state.
      parameters:
      - name: cycleId
        in: path
        description: Id from the cycle that will be retried
        required: true
        schema:
          type:
          - string
          - 'null'
      - name: Content-Type
        in: header
        description: Type of the content being sent.
        required: true
        style: simple
        schema:
          type: string
          example: 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
          example: application/json
      responses:
        '200':
          description: OK
      operationId: postApiRnsPubCyclesByCycleIdRetry
      x-operation-id-source: derived
components:
  schemas:
    SubscriptionCycleContext:
      type: object
      properties:
        items:
          type:
          - array
          - 'null'
          items:
            $ref: '#/components/schemas/SubscriptionCycleItemContext'
        paymentSystem:
          type:
          - string
          - 'null'
        paymentSystemName:
          type:
          - string
          - 'null'
        paymentSystemGroup:
          type:
          - string
          - 'null'
        paymentAccountId:
          type:
          - string
          - 'null'
        addressId:
          type:
          - string
          - 'null'
        addressType:
          type:
          - string
          - 'null'
      additionalProperties: false
    SimulationItemResult:
      type: object
      properties:
        id:
          type:
          - string
          - 'null'
        quantity:
          type: integer
          format: int32
          title: quantity
          description: Amount of units in the cart.
          example: 5
        unitPrice:
          type:
          - integer
          - 'null'
          format: int64
        status:
          $ref: '#/components/schemas/ItemSimulationStatus'
        statusName:
          type:
          - string
          - 'null'
      additionalProperties: false
    SubscriptionCycleItemContext:
      type: object
      properties:
        subscriptionItemId:
          type:
          - string
          - 'null'
        skuId:
          type:
          - string
          - 'null'
          title: skuId
          description: SKU ID.
          example: '12'
        quantity:
          type: integer
          format: int32
          title: quantity
          description: Amount of units in the cart.
          example: 5
        status:
          $ref: '#/components/schemas/Status'
        isSkipped:
          type: boolean
        cycleCount:
          type: integer
          format: int32
      additionalProperties: false
    Status:
      enum:
      - 0
      - 1
      - 2
      - 3
      type: integer
      format: int32
    ItemSimulationStatus:
      enum:
      - 0
      - 1
      - 2
      - 3
      - 4
      type: integer
      format: int32
    SubscriptionCycleOrderInfo:
      type: object
      properties:
        orderId:
          type:
          - string
          - 'null'
        orderGroup:
          type:
          - string
          - 'null'
        paymentURL:
          type:
          - string
          - 'null'
        value:
          type: integer
          format: int64
      additionalProperties: false
    SubscriptionCycleResponse:
      type: object
      properties:
        id:
          type:
          - string
          - 'null'
        subscriptionId:
          type:
          - string
          - 'null'
        status:
          type:
          - string
          - 'null'
        customerEmail:
          type:
          - string
          - 'null'
        date:
          type: string
          format: date-time
        lastUpdate:
          type: string
          format: date-time
        cycleCount:
          type: integer
          format: int32
        isInRetry:
          type: boolean
        message:
          type:
          - string
          - 'null'
        orderInfo:
          $ref: '#/components/schemas/SubscriptionCycleOrderInfo'
        context:
          $ref: '#/components/schemas/SubscriptionCycleContext'
        simulationItems:
          type:
          - array
          - 'null'
          items:
            $ref: '#/components/schemas/SimulationItemResult'
      additionalProperties: false
  securitySchemes:
    appKey:
      type: apiKey
      in: header
      name: X-VTEX-API-AppKey
    appToken:
      type: apiKey
      in: header
      name: X-VTEX-API-AppToken