Tech Data Orders API
Order creation, management, and cancellation
Order creation, management, and cancellation
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
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.curl "https://apis.io/api/v1/apis/tech-data-orders-api"
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
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: 3.2.0
info:
title: TD SYNNEX StreamOne Ion Authentication Orders API
description: The StreamOne Ion API provides reseller partners with programmatic access to TD SYNNEX's cloud distribution platform. Partners can manage end customers, browse product catalogs, create and manage orders, handle subscriptions, configure cloud provider accounts, manage shopping carts, and access billing reports. The API supports multi-vendor cloud management across Microsoft, Google, and AWS through a unified interface.
version: v3
contact:
name: TD SYNNEX StreamOne Ion
url: https://docs.streamone.cloud/
license:
name: TD SYNNEX Terms of Service
url: https://eu.tdsynnex.com/CatAdminHtmlContentEditor/uploads/Country/COM/NEW%20Terms-and-Conditions/StreamOne/Partner%20API%20Service%20Specification%20Addendum%20to%20ION%20Platform%20Agreement.pdf
servers:
- url: https://ion.tdsynnex.com/api
description: TD SYNNEX StreamOne Ion Production
security:
- BearerAuth: []
tags:
- name: Orders
description: Order creation, management, and cancellation
paths:
/v3/accounts/{accountId}/orders:
get:
operationId: listAccountOrders
summary: List Account Orders
description: Retrieve a paginated list of all orders for the account.
tags:
- Orders
parameters:
- $ref: '#/components/parameters/accountId'
- name: page
in: query
schema:
type: integer
default: 1
- name: pageSize
in: query
schema:
type: integer
default: 20
- name: status
in: query
schema:
type: string
description: Filter orders by status.
responses:
'200':
description: List of orders
content:
application/json:
schema:
$ref: '#/components/schemas/OrderList'
'401':
$ref: '#/components/responses/Unauthorized'
post:
operationId: createOrder
summary: Create Order
description: Create a new order for the account.
tags:
- Orders
parameters:
- $ref: '#/components/parameters/accountId'
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/OrderCreate'
responses:
'201':
description: Order created
content:
application/json:
schema:
$ref: '#/components/schemas/Order'
'400':
$ref: '#/components/responses/BadRequest'
'401':
$ref: '#/components/responses/Unauthorized'
/v3/accounts/{accountId}/orders/{orderId}:
get:
operationId: getOrder
summary: Get Order
description: Retrieve details for a specific order.
tags:
- Orders
parameters:
- $ref: '#/components/parameters/accountId'
- $ref: '#/components/parameters/orderId'
responses:
'200':
description: Order details
content:
application/json:
schema:
$ref: '#/components/schemas/Order'
'401':
$ref: '#/components/responses/Unauthorized'
'404':
$ref: '#/components/responses/NotFound'
put:
operationId: updateOrder
summary: Update Order
description: Update an existing order before it is processed.
tags:
- Orders
parameters:
- $ref: '#/components/parameters/accountId'
- $ref: '#/components/parameters/orderId'
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/OrderUpdate'
responses:
'200':
description: Order updated
content:
application/json:
schema:
$ref: '#/components/schemas/Order'
'400':
$ref: '#/components/responses/BadRequest'
'401':
$ref: '#/components/responses/Unauthorized'
'404':
$ref: '#/components/responses/NotFound'
delete:
operationId: cancelOrder
summary: Cancel Order
description: Cancel an existing order that has not yet been processed.
tags:
- Orders
parameters:
- $ref: '#/components/parameters/accountId'
- $ref: '#/components/parameters/orderId'
responses:
'204':
description: Order cancelled
'401':
$ref: '#/components/responses/Unauthorized'
'404':
$ref: '#/components/responses/NotFound'
/v3/accounts/{accountId}/customers/{customerId}/orders:
get:
operationId: listCustomerOrders
summary: List Customer Orders
description: Retrieve all orders placed for a specific customer.
tags:
- Orders
parameters:
- $ref: '#/components/parameters/accountId'
- $ref: '#/components/parameters/customerId'
- name: page
in: query
schema:
type: integer
default: 1
- name: pageSize
in: query
schema:
type: integer
default: 20
responses:
'200':
description: List of customer orders
content:
application/json:
schema:
$ref: '#/components/schemas/OrderList'
'401':
$ref: '#/components/responses/Unauthorized'
'404':
$ref: '#/components/responses/NotFound'
components:
responses:
BadRequest:
description: Bad request
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
NotFound:
description: Resource not found
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
Unauthorized:
description: Unauthorized - invalid or expired token
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
schemas:
Pagination:
type: object
properties:
page:
type: integer
pageSize:
type: integer
totalRecords:
type: integer
totalPages:
type: integer
OrderUpdate:
type: object
properties:
items:
type: array
items:
$ref: '#/components/schemas/OrderItemCreate'
notes:
type: string
OrderCreate:
type: object
required:
- customerId
- items
properties:
customerId:
type: string
items:
type: array
items:
$ref: '#/components/schemas/OrderItemCreate'
notes:
type: string
OrderList:
type: object
properties:
data:
type: array
items:
$ref: '#/components/schemas/Order'
pagination:
$ref: '#/components/schemas/Pagination'
Order:
type: object
properties:
id:
type: string
accountId:
type: string
customerId:
type: string
status:
type: string
enum:
- Draft
- Submitted
- Processing
- Completed
- Cancelled
total:
type: number
format: float
currency:
type: string
items:
type: array
items:
$ref: '#/components/schemas/OrderItem'
createdAt:
type: string
format: date-time
updatedAt:
type: string
format: date-time
OrderItemCreate:
type: object
required:
- productId
- quantity
properties:
productId:
type: string
quantity:
type: integer
provisioningData:
type: object
additionalProperties: true
Error:
type: object
properties:
code:
type: string
message:
type: string
details:
type: array
items:
type: string
OrderItem:
type: object
properties:
id:
type: string
productId:
type: string
productName:
type: string
quantity:
type: integer
unitPrice:
type: number
format: float
totalPrice:
type: number
format: float
parameters:
accountId:
name: accountId
in: path
required: true
schema:
type: string
description: The reseller account identifier.
customerId:
name: customerId
in: path
required: true
schema:
type: string
description: The customer account identifier.
orderId:
name: orderId
in: path
required: true
schema:
type: string
description: The order identifier.
securitySchemes:
BearerAuth:
type: http
scheme: bearer
description: OAuth 2.0 bearer token obtained via the /oauth/token endpoint.