VTEX · Capability
VTex Giftcard Provider Protocol — Gift Cards
VTex Giftcard Provider Protocol — Gift Cards. 3 operations. Lead operation: VTex Create a gift card. Self-contained Naftiko capability covering one Vtex business surface.
What You Can Do
POST
Creategiftcard
— VTex Create a gift card
/v1/giftcards
POST
Listallgiftcards
— VTex List all gift cards
/v1/giftcards/search
GET
Getgiftcardbyid
— VTex Get a gift card by ID
/v1/giftcards/{giftcardid}
MCP Tools
vtex-create-gift-card
VTex Create a gift card
vtex-list-all-gift-cards
VTex List all gift cards
read-only
vtex-get-gift-card-id
VTex Get a gift card by ID
read-only
idempotent
Capability Spec
naftiko: 1.0.0-alpha2
info:
label: VTex Giftcard Provider Protocol — Gift Cards
description: 'VTex Giftcard Provider Protocol — Gift Cards. 3 operations. Lead operation: VTex Create a gift card. Self-contained
Naftiko capability covering one Vtex business surface.'
tags:
- Vtex
- Gift Cards
created: '2026-05-19'
modified: '2026-05-19'
binds:
- namespace: env
keys:
VTEX_API_KEY: VTEX_API_KEY
capability:
consumes:
- type: http
namespace: gift-card-provider-protocol-gift-cards
baseUri: https://{providerApiEndpoint}
description: VTex Giftcard Provider Protocol — Gift Cards business capability. Self-contained, no shared references.
resources:
- name: giftcards
path: /giftcards
operations:
- name: creategiftcard
method: POST
description: VTex Create a gift card
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: Content-Type
in: header
type: string
description: Type of the content being sent.
required: true
- name: Accept
in: header
type: string
description: HTTP Client Negotiation _Accept_ Header. Indicates the types of responses the client can understand.
required: true
- name: body
in: body
type: object
description: Request body (JSON).
required: true
- name: giftcards-_search
path: /giftcards/_search
operations:
- name: listallgiftcards
method: POST
description: VTex List all gift cards
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: Content-Type
in: header
type: string
description: Type of the content being sent.
required: true
- name: Accept
in: header
type: string
description: HTTP Client Negotiation _Accept_ Header. Indicates the types of responses the client can understand.
required: true
- name: REST-Range
in: header
type: string
description: Pagination control. This query variable must follow the format _resources={from}-{to}_.
- name: body
in: body
type: object
description: Request body (JSON).
required: true
- name: giftcards-giftCardId
path: /giftcards/{giftCardId}
operations:
- name: getgiftcardbyid
method: GET
description: VTex Get a gift card by ID
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: Content-Type
in: header
type: string
description: Type of the content being sent.
required: true
- name: Accept
in: header
type: string
description: HTTP Client Negotiation _Accept_ Header. Indicates the types of responses the client can understand.
required: true
- name: giftCardId
in: path
type: string
description: Gift card identification.
required: true
authentication:
type: apikey
key: X-PROVIDER-API-AppKey
value: '{{env.VTEX_API_KEY}}'
placement: header
exposes:
- type: rest
namespace: gift-card-provider-protocol-gift-cards-rest
port: 8080
description: REST adapter for VTex Giftcard Provider Protocol — Gift Cards. One Spectral-compliant resource per consumed
operation, prefixed with /v1.
resources:
- path: /v1/giftcards
name: giftcards
description: REST surface for giftcards.
operations:
- method: POST
name: creategiftcard
description: VTex Create a gift card
call: gift-card-provider-protocol-gift-cards.creategiftcard
with:
Content-Type: rest.Content-Type
Accept: rest.Accept
body: rest.body
outputParameters:
- type: object
mapping: $.
- path: /v1/giftcards/search
name: giftcards-search
description: REST surface for giftcards-_search.
operations:
- method: POST
name: listallgiftcards
description: VTex List all gift cards
call: gift-card-provider-protocol-gift-cards.listallgiftcards
with:
Content-Type: rest.Content-Type
Accept: rest.Accept
REST-Range: rest.REST-Range
body: rest.body
outputParameters:
- type: object
mapping: $.
- path: /v1/giftcards/{giftcardid}
name: giftcards-giftcardid
description: REST surface for giftcards-giftCardId.
operations:
- method: GET
name: getgiftcardbyid
description: VTex Get a gift card by ID
call: gift-card-provider-protocol-gift-cards.getgiftcardbyid
with:
Content-Type: rest.Content-Type
Accept: rest.Accept
giftCardId: rest.giftCardId
outputParameters:
- type: object
mapping: $.
- type: mcp
namespace: gift-card-provider-protocol-gift-cards-mcp
port: 9090
transport: http
description: MCP adapter for VTex Giftcard Provider Protocol — Gift Cards. One tool per consumed operation, routed inline
through this capability's consumes block.
tools:
- name: vtex-create-gift-card
description: VTex Create a gift card
hints:
readOnly: false
destructive: false
idempotent: false
call: gift-card-provider-protocol-gift-cards.creategiftcard
with:
Content-Type: tools.Content-Type
Accept: tools.Accept
body: tools.body
outputParameters:
- type: object
mapping: $.
- name: vtex-list-all-gift-cards
description: VTex List all gift cards
hints:
readOnly: true
destructive: false
idempotent: false
call: gift-card-provider-protocol-gift-cards.listallgiftcards
with:
Content-Type: tools.Content-Type
Accept: tools.Accept
REST-Range: tools.REST-Range
body: tools.body
outputParameters:
- type: object
mapping: $.
- name: vtex-get-gift-card-id
description: VTex Get a gift card by ID
hints:
readOnly: true
destructive: false
idempotent: true
call: gift-card-provider-protocol-gift-cards.getgiftcardbyid
with:
Content-Type: tools.Content-Type
Accept: tools.Accept
giftCardId: tools.giftCardId
outputParameters:
- type: object
mapping: $.