VTEX Gift Cards API

The Gift Cards API from VTEX — 3 operation(s) for gift cards.

Operations 3

POST /giftcards/_search VTex List all gift cards #
GET /giftcards/{giftCardId} VTex Get a gift card by ID #
POST /giftcards VTex Create a gift card #

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-gift-cards-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-gift-cards-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: VTex Giftcard Provider Protocol Gift Cards API
  description: '>ℹ️ Onboarding guide

    >

    > Check the new Payments onboarding guide.'
  contact: {}
  version: '1.0'
servers:
- url: https://{providerApiEndpoint}
  description: Gift card provider endpoint URL.
  variables:
    providerApiEndpoint:
      description: Gift card provider endpoint URL.
      default: '{providerApiEndpoint}'
security:
- appKey: []
  appToken: []
tags:
- name: Gift Cards
paths:
  /giftcards/_search:
    post:
      tags:
      - Gift Cards
      summary: VTex List all gift cards
      description: 'Returns a list of all gift cards available from a gift card provider for a specific customer''s cart.


        > ℹ️ This request is made from VTEX to the gift card payment provider.


        ## Permissions


        Check with your service provider to know what permissions are needed.'
      operationId: ListAllGiftCards
      parameters:
      - name: Content-Type
        in: header
        description: Type of the content being sent.
        required: true
        style: simple
        schema:
          type: string
          default: application/vnd.vtex.giftcardproviders.v1+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/vnd.vtex.giftcardproviders.v1+json
      - name: REST-Range
        in: header
        description: Pagination control. This query variable must follow the format _resources={from}-{to}_.
        required: false
        style: simple
        schema:
          type: string
          default: resources=0-49
      requestBody:
        content:
          application/vnd.vtex.giftcardproviders.v1+json:
            schema:
              $ref: '#/components/schemas/ListAllGiftCardsRequest'
        required: true
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/response'
              example:
              - id: 3ad63br54-988e-4a14-8b7f-31fc6a5b955c_24
                provider: ProviderName
                balance: 5.9
                _self:
                  href: /gatewayqa/giftcards/3ad63br54-988e-4a14-8b7f-31fc6a5b955c_24
      deprecated: false
  /giftcards/{giftCardId}:
    get:
      tags:
      - Gift Cards
      summary: VTex Get a gift card by ID
      description: 'Returns information for a specific gift card from a gift card provider.


        > ℹ️ This request is made from VTEX to the gift card payment provider.


        ## Permissions


        Check with your service provider to know what permissions are needed.'
      operationId: GetGiftCardbyID
      parameters:
      - name: Content-Type
        in: header
        description: Type of the content being sent.
        required: true
        style: simple
        schema:
          type: string
          default: application/vnd.vtex.giftcardproviders.v1+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/vnd.vtex.giftcardproviders.v1+json
      - name: giftCardId
        in: path
        description: Gift card identification.
        required: true
        style: simple
        schema:
          type: string
          example: '5'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: object
                properties:
                  id:
                    type: string
                    description: Gift card identification.
                  redemptionToken:
                    type: string
                    description: Gift card redemption token.
                  redemptionCode:
                    type: string
                    description: Gift card identification code used at checkout. Minimum of 6 characters.
                  balance:
                    type: number
                    description: Gift card current balance. For newly created gift cards, the balance will be 0.0.
                  emissionDate:
                    type: string
                    description: Gift card creation date.
                  expiringDate:
                    type: string
                    description: Gift card expiration date.
                  currencyCode:
                    type: string
                    description: Currency code in ISO 4217.
                  discount:
                    type: boolean
                    description: Discount information.
                    deprecated: true
                  transactions:
                    type: object
                    description: Transactions information.
                    properties:
                      href:
                        type: string
                        description: Gift card resource URL. The number described in the URL refers to the gift card identification.
              example:
                id: '5'
                redemptionToken: 32ScL57220Vapb8pc50HJ3mWH1cl1L8x
                redemptionCode: '***********ASDQ'
                balance: 870
                emissionDate: '2014-04-24T20:22:58.163'
                expiringDate: '2016-01-01T00:00:00'
                currencyCode: USD
                discount: false
                transactions:
                  href: cards/954/transactions
      deprecated: false
  /giftcards:
    post:
      tags:
      - Gift Cards
      summary: VTex Create a gift card
      description: 'Creates a gift card for a specific user in a gift card provider.


        > ℹ️ This request is made from VTEX to the gift card payment provider.


        ## Permissions


        Check with your service provider to know what permissions are needed.'
      operationId: CreateGiftCard
      parameters:
      - name: Content-Type
        in: header
        description: Type of the content being sent.
        required: true
        style: simple
        schema:
          type: string
          default: application/vnd.vtex.giftcardproviders.v1+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/vnd.vtex.giftcardproviders.v1+json
      requestBody:
        content:
          application/vnd.vtex.giftcardproviders.v1+json:
            schema:
              $ref: '#/components/schemas/CreateGiftCardRequest'
        required: true
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: object
                properties:
                  id:
                    type: string
                    description: Gift card identification.
                  relationName:
                    type: string
                    description: Field to be filled in when it is not necessary to use a loyalty program for the gift card. Note that a new `relationNamevalue` is required for each new gift card to be created.
                  emissionDate:
                    type: string
                    description: Gift card creation date.
                  expiringDate:
                    type: string
                    description: Gift card expiration date.
                  caption:
                    type: string
                    description: Field to be filled in if a loyalty program must be created for the Gift Card.
                  restrictedToOwner:
                    type: boolean
                    description: The gift card can only be used for a specified client's ID.
                  multipleRedemptions:
                    type: boolean
                    description: The gift card can be used to make new purchases until its value is completely used.
                  multipleCredits:
                    type: boolean
                    description: The gift card balance can be changed.
                  profileId:
                    type: string
                    description: Client ID. You can use the customer's registered email or the `userId` parameter which can be found in the [Master Data](https://help.vtex.com/en/tutorial/master-data--4otjBnR27u4WUIciQsmkAw).
                  currencyCode:
                    type: string
                    description: Currency code in ISO 4217.
              example:
                id: '38'
                relationName: loyalty-program
                emissionDate: '2011-02-04T17:02:19.17'
                expiringDate: '2020-02-04T17:02:19.17'
                caption: Loyalty Program
                restrictedToOwner: true
                multipleRedemptions: true
                multipleCredits: true
                profileId: 92de2449-0e02-4ca9-a4aa-a09cc9d8f7ff
                currencyCode: USD
      deprecated: false
components:
  schemas:
    response:
      description: Response information.
      required:
      - id
      - provider
      - balance
      - _self
      type: object
      properties:
        id:
          type: string
          description: Gift card identification.
        provider:
          type: string
          description: Provider's name.
        balance:
          type: number
          description: Gift card current balance.
        _self:
          $ref: '#/components/schemas/Self'
    Cart:
      description: Cart information.
      required:
      - grandTotal
      - relationName
      - redemptionCode
      - discounts
      - shipping
      - taxes
      - items
      - itemsTotal
      type: object
      properties:
        grandTotal:
          type: integer
          description: Total payment value.
          example: 182
        relationName:
          type:
          - string
          - 'null'
          description: Represents the relationship between the client and the store.
          example: null
        redemptionCode:
          type: string
          description: Gift card identification code used at checkout. Minimum of 6 characters.
          example: BAHD-ASDB-ADQW-ASDQ
        discounts:
          type: integer
          description: Discounts value.
          example: 20
        shipping:
          type: integer
          description: Shipping value.
          example: 2
        taxes:
          type: integer
          description: Taxes value.
          example: 0
        items:
          type: array
          description: Items information.
          items:
            $ref: '#/components/schemas/Item'
        itemsTotal:
          type: integer
          description: Total items value.
          example: 200
    CreateGiftCardRequest:
      description: Create a gift card request body information.
      required:
      - relationName
      - caption
      - profileId
      type: object
      properties:
        relationName:
          type: string
          description: Field to be filled in when it is not necessary to use a loyalty program for the gift card. Note that a new `relationNamevalue` is required for each new gift card to be created.
          example: loyalty-program
        emissionDate:
          type: string
          description: Gift card creation date.
          example: '2020-08-01T13:15:30Z'
        expiringDate:
          type: string
          description: Gift card expiration date.
          example: '2020-09-01T13:15:30Z'
        caption:
          type: string
          description: Field to be filled in if a loyalty program must be created for the gift card.
          example: Loyalty program
        restrictedToOwner:
          type: boolean
          description: The gift card can only be used for a specified client's ID.
          example: true
        multipleRedemptions:
          type: boolean
          description: The gift card can be used to make new purchases until its value is completely used.
          example: true
        multipleCredits:
          type: boolean
          description: The gift card balance can be changed.
          example: true
        profileId:
          type: string
          description: Client ID. You can use the customer's registered email or the `userId` parameter which can be found in the [Master Data](https://help.vtex.com/en/tutorial/master-data--4otjBnR27u4WUIciQsmkAw).
          example: 92de2249-0e02-4ca9-a4aa-a09cc9d8f7ff
        currencyCode:
          type: string
          description: Currency code in ISO 4217.
          example: USD
    Client:
      description: Customer information.
      required:
      - id
      - email
      - document
      type: object
      properties:
        id:
          type: string
          description: Customer's identification.
          example: 3b1abc17
        email:
          type: string
          description: Customer's email address.
          example: email@domain.com
        document:
          type: string
          description: Document number informed by the customer.
          example: '234235'
    Self:
      required:
      - href
      type: object
      description: It is an object that carries an auto reference from the provider at the Hub (on its API).
      properties:
        href:
          type: string
          description: This is one of the fields inside the `_self`. It is exactly the route that identifies this provider on the Hub's API, but it is not the same thing as the `serviceURL`.
    ListAllGiftCardsRequest:
      description: Gift cards information.
      required:
      - client
      - cart
      type: object
      properties:
        client:
          $ref: '#/components/schemas/Client'
        cart:
          $ref: '#/components/schemas/Cart'
    Item:
      description: Items information.
      required:
      - productId
      - id
      - refId
      - name
      - price
      - quantity
      type: object
      properties:
        productId:
          type: string
          description: Product ID.
          example: '2000000'
        id:
          type: string
          description: The ID of the SKU in VTEX platform.
          example: '2000002'
        refId:
          type: string
          description: Product Reference ID.
          example: MEV41
        name:
          type: string
          description: Product name.
          example: Shoes
        price:
          type: integer
          description: Product price.
          example: 200
        quantity:
          type: integer
          description: Product quantity.
          example: 1
  securitySchemes:
    appKey:
      type: apiKey
      in: header
      name: X-PROVIDER-API-AppKey
      description: Unique identifier created by the provider and configured through [Giftcard Hub API](https://developers.vtex.com/docs/api-reference/giftcard-hub-api#put-/api/giftcardproviders/-giftCardProviderId-).
    appToken:
      type: apiKey
      in: header
      name: X-PROVIDER-API-AppToken
      description: Unique token created by the provider and configured through [Giftcard Hub API](https://developers.vtex.com/docs/api-reference/giftcard-hub-api#put-/api/giftcardproviders/-giftCardProviderId-).