OpenAPI Specification
openapi: 3.0.3
info:
title: TD SYNNEX StreamOne Ion Partner Authentication Products API
description: The StreamOne Ion Partner API provides partners with programmatic access to TD SYNNEX cloud distribution services. Partners can manage end customers, browse product catalogs, create and manage orders, track subscriptions, manage shopping carts, and access business intelligence reports through a unified REST interface supporting multiple cloud vendors. The API enables MSPs, resellers, and technology partners to automate their cloud distribution workflows.
version: '3'
contact:
name: TD SYNNEX StreamOne Support
url: https://www.tdsynnex.com/ion/api/
servers:
- url: https://ion.tdsynnex.com
description: TD SYNNEX StreamOne Ion Production API
security:
- OAuth2: []
tags:
- name: Products
description: Technology product catalog browsing
paths:
/v3/accounts/{accountId}/products:
get:
operationId: listProducts
summary: List Products
description: Retrieve the list of technology products available through TD SYNNEX.
tags:
- Products
parameters:
- $ref: '#/components/parameters/AccountId'
- name: vendor
in: query
description: Filter by vendor name
schema:
type: string
- name: category
in: query
description: Filter by product category
schema:
type: string
- name: page
in: query
schema:
type: integer
- name: pageSize
in: query
schema:
type: integer
responses:
'200':
description: List of available products
content:
application/json:
schema:
type: object
properties:
products:
type: array
items:
$ref: '#/components/schemas/Product'
totalCount:
type: integer
'401':
$ref: '#/components/responses/Unauthorized'
/v3/accounts/{accountId}/products/{productId}:
get:
operationId: getProduct
summary: Get Product
description: Access detailed information for a specific technology product.
tags:
- Products
parameters:
- $ref: '#/components/parameters/AccountId'
- name: productId
in: path
required: true
description: Unique product identifier
schema:
type: string
responses:
'200':
description: Product details
content:
application/json:
schema:
$ref: '#/components/schemas/Product'
'401':
$ref: '#/components/responses/Unauthorized'
'404':
$ref: '#/components/responses/NotFound'
/v3/accounts/{accountId}/products/verticals:
post:
operationId: listProductVerticals
summary: List Product Verticals
description: List product verticals (industry/market segments) available in the catalog.
tags:
- Products
parameters:
- $ref: '#/components/parameters/AccountId'
responses:
'200':
description: List of product verticals
content:
application/json:
schema:
type: array
items:
type: string
'401':
$ref: '#/components/responses/Unauthorized'
/v3/accounts/{accountId}/products/categories:
put:
operationId: listProductCategories
summary: List Product Categories
description: List product categories available in the catalog.
tags:
- Products
parameters:
- $ref: '#/components/parameters/AccountId'
responses:
'200':
description: List of product categories
content:
application/json:
schema:
type: array
items:
type: string
'401':
$ref: '#/components/responses/Unauthorized'
components:
responses:
NotFound:
description: Not Found - Requested resource does not exist
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
Unauthorized:
description: Unauthorized - Valid OAuth 2.0 token required
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
schemas:
Product:
type: object
description: A technology product available for distribution
properties:
productId:
type: string
name:
type: string
description:
type: string
vendor:
type: string
category:
type: string
vertical:
type: string
sku:
type: string
pricing:
type: object
properties:
unitPrice:
type: number
format: double
currency:
type: string
billingFrequency:
type: string
enum:
- MONTHLY
- ANNUAL
- ONE_TIME
features:
type: array
items:
type: string
status:
type: string
Error:
type: object
properties:
code:
type: string
description: Error code
message:
type: string
description: Human-readable error message
details:
type: array
items:
type: string
parameters:
AccountId:
name: accountId
in: path
required: true
description: Partner account identifier
schema:
type: string
securitySchemes:
OAuth2:
type: oauth2
description: TD SYNNEX StreamOne Ion uses OAuth 2.0 with refresh token flow
flows:
clientCredentials:
tokenUrl: https://ion.tdsynnex.com/oauth/token
scopes:
read: Read access to partner resources
write: Write access to create and update resources