ShipStation · Capability
ShipStation V1 API — Products
ShipStation V1 API — Products. 3 operations. Lead operation: List Products. Self-contained Naftiko capability covering one Shipstation business surface.
What You Can Do
GET
Listproducts
— List Products
/v1/products
GET
Getproduct
— Get Product
/v1/products/{productid}
PUT
Updateproduct
— Update Product
/v1/products/{productid}
MCP Tools
list-products
List Products
read-only
idempotent
get-product
Get Product
read-only
idempotent
update-product
Update Product
idempotent
Capability Spec
naftiko: 1.0.0-alpha2
info:
label: ShipStation V1 API — Products
description: 'ShipStation V1 API — Products. 3 operations. Lead operation: List Products. Self-contained Naftiko capability
covering one Shipstation business surface.'
tags:
- Shipstation
- Products
created: '2026-05-19'
modified: '2026-05-19'
binds:
- namespace: env
keys:
SHIPSTATION_API_KEY: SHIPSTATION_API_KEY
capability:
consumes:
- type: http
namespace: v1-products
baseUri: https://ssapi.shipstation.com
description: ShipStation V1 API — Products business capability. Self-contained, no shared references.
resources:
- name: products
path: /products
operations:
- name: listproducts
method: GET
description: List Products
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: sku
in: query
type: string
- name: name
in: query
type: string
- name: productCategoryId
in: query
type: integer
- name: productTypeId
in: query
type: integer
- name: tagId
in: query
type: integer
- name: startDate
in: query
type: string
- name: endDate
in: query
type: string
- name: sortBy
in: query
type: string
- name: sortDir
in: query
type: string
- name: page
in: query
type: integer
- name: pageSize
in: query
type: integer
- name: showInactive
in: query
type: boolean
- name: products-productId
path: /products/{productId}
operations:
- name: getproduct
method: GET
description: Get Product
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: productId
in: path
type: integer
required: true
- name: updateproduct
method: PUT
description: Update Product
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: productId
in: path
type: integer
required: true
- name: body
in: body
type: object
description: Request body (JSON).
required: true
authentication:
type: basic
username: '{{env.SHIPSTATION_USER}}'
password: '{{env.SHIPSTATION_PASS}}'
exposes:
- type: rest
namespace: v1-products-rest
port: 8080
description: REST adapter for ShipStation V1 API — Products. One Spectral-compliant resource per consumed operation, prefixed
with /v1.
resources:
- path: /v1/products
name: products
description: REST surface for products.
operations:
- method: GET
name: listproducts
description: List Products
call: v1-products.listproducts
with:
sku: rest.sku
name: rest.name
productCategoryId: rest.productCategoryId
productTypeId: rest.productTypeId
tagId: rest.tagId
startDate: rest.startDate
endDate: rest.endDate
sortBy: rest.sortBy
sortDir: rest.sortDir
page: rest.page
pageSize: rest.pageSize
showInactive: rest.showInactive
outputParameters:
- type: object
mapping: $.
- path: /v1/products/{productid}
name: products-productid
description: REST surface for products-productId.
operations:
- method: GET
name: getproduct
description: Get Product
call: v1-products.getproduct
with:
productId: rest.productId
outputParameters:
- type: object
mapping: $.
- method: PUT
name: updateproduct
description: Update Product
call: v1-products.updateproduct
with:
productId: rest.productId
body: rest.body
outputParameters:
- type: object
mapping: $.
- type: mcp
namespace: v1-products-mcp
port: 9090
transport: http
description: MCP adapter for ShipStation V1 API — Products. One tool per consumed operation, routed inline through this
capability's consumes block.
tools:
- name: list-products
description: List Products
hints:
readOnly: true
destructive: false
idempotent: true
call: v1-products.listproducts
with:
sku: tools.sku
name: tools.name
productCategoryId: tools.productCategoryId
productTypeId: tools.productTypeId
tagId: tools.tagId
startDate: tools.startDate
endDate: tools.endDate
sortBy: tools.sortBy
sortDir: tools.sortDir
page: tools.page
pageSize: tools.pageSize
showInactive: tools.showInactive
outputParameters:
- type: object
mapping: $.
- name: get-product
description: Get Product
hints:
readOnly: true
destructive: false
idempotent: true
call: v1-products.getproduct
with:
productId: tools.productId
outputParameters:
- type: object
mapping: $.
- name: update-product
description: Update Product
hints:
readOnly: false
destructive: false
idempotent: true
call: v1-products.updateproduct
with:
productId: tools.productId
body: tools.body
outputParameters:
- type: object
mapping: $.