Conversation
feat: add Orders API v2026-01-01 (searchOrders, getOrder) Migrate from Orders API v0 to v2026-01-01 based on Amazon SP-API migration guide. Breaking changes from v0: - GetOrders -> searchOrders, GetOrder -> getOrder (consolidated endpoint) - GetOrderItems, GetOrderBuyerInfo, GetOrderAddress, GetOrderItemsBuyerInfo merged into getOrder via includedData parameter - No RDT required for PII access (role-based instead) - NextToken -> paginationToken (24h expiration) - OrderStatuses -> fulfillmentStatuses (UPPER_SNAKE_CASE) - FulfillmentChannels MFN/AFN -> fulfilledBy MERCHANT/AMAZON - Boolean flags (IsPrime, IsBusinessOrder...) -> programs[] array - Flat pricing (ItemPrice, ItemTax...) -> hierarchical proceeds.breakdowns[] New features: - Package tracking via includedData=PACKAGES - Programs: DELIVERY_BY_AMAZON, AMAZON_BAZAAR, PRIME, PREMIUM - Structured financial breakdowns with detailed subtypes - GetOrderFullAsync() convenience method for all data in one call Files: - OrderService20260101.cs (service with SearchOrders + GetOrder) - Parameters: ParameterSearchOrders20260101, ParameterGetOrder20260101 - Models: Order, OrderItem, Fulfillment, Buyer, Recipient, Proceeds, Package, Enums, Responses, Money (namespace Orders20260101) Edited: - ApiUrls.cs -> Added Class OrderApiUrls20260101 - RateLimit- (Type/Definitions).cs -> Added OrderV2026-01-01 Rates - AmazonConnection.cs -> Added OrderService20260101 to Services.
- OrdersSample20260101.cs: usage examples for all new endpoints covering SearchOrders, GetOrder with includedData, PII without RDT, programs mapping, proceeds breakdown, and package tracking
These changes include the introduction of new methods in OrdersSample.cs. Support for the new API version, 'Orders20260101', has been added to 'AmazonConnection.cs', and the old 'Orders' class has been removed. The ParameterGetOrder parameter class has been modified to support the new endpoint. The old class in `ParameterOrderList.cs` has been replaced by the new class, `ParameterSearchOrders`, in `ParameterSearchOrders.cs`, which defines the parameters for order searches. The API URLs in ApiUrls.cs have been updated to support the new endpoints and the old ones have been removed. The methods for querying orders in OrderService.cs have been updated to use the new parameters and endpoints, and the old methods have been marked as obsolete. Additionally, new converter classes have been added to `OrderConverter.cs` to process order programme information. The ParameterGetOrder and ParameterSearchOrders classes now have their own .getParameters() method for processing parameters.
|
|
Is anything pending to get this merged? |
|
Sadly i dont know anything about the merge process for this repo. Edit 27.03.2026: i am stupid, i misread the email and thought the deprication will be today but it will be turned off on the 27.03.2027. Therefore there is still time to merge it. |
|
@abuzuhri any chance you can give this a check, it looks good i think? |
|
@Felix-From did you end using your own forked branch for this? does it run ok? we are considering forking yours as we want to run with this too |
|
We are currently using the fork of @Felix-From for our own order service. Till now we didn't get any big problems. |



Orders API v2026-01-01 Migration
Summary
Migrates the Orders API from
v0tov2026-01-01based on the official Amazon SP-API Migration Guide.The new API consolidates 6 separate endpoints into 2, removes the RDT requirement for PII access, and introduces new features like package tracking and structured financial data.
Breaking Changes
ParameterOrderListmarked[Obsolete]– replaced byParameterSearchOrdersParameterGetOrdermarked[Obsolete]– replaced byParameterGetOrder20260101ParameterSearchOrdersandParameterGetOrder20260101no longer inherit fromParameterBased– customgetParameters()that serializes query parameters exactly as the new API expects (camelCase keys,[EnumMember]values, comma-separated collections)OrderStatuses→FulfillmentStatuseswith new values:Shipped→SHIPPED,Canceled→CANCELLED(double L),PartiallyShipped→PARTIALLY_SHIPPEDetc. (UPPER_SNAKE_CASE)FulfillmentChannelsMFN/AFN →FulfilledByMERCHANT/AMAZONNextToken→PaginationToken– token expires after 24 hoursPaymentMethods,BuyerEmail,EasyShipShipmentStatuses,ActualFulfillmentSupplySourceId,IsISPU,SellerOrderId,StoreChainStoreIdIsNeedRestrictedDataTokenandRestrictedDataTokenRequestremoved entirely – PII access is now role-basedIsPrime,IsBusinessOrder,IsPremiumOrder,IsISPU,IsTransparencyetc. →programs[]array at order and item levelItemPrice,ItemTax,ShippingPrice,ShippingTax,PromotionDiscountetc. → hierarchicalproceeds.breakdowns[]structure withtype/subtypeSellerOrderIdno longer a direct field →Order.OrderAliaseswithaliasType == "SELLER_ORDER_ID"IsReplacementOrder/ReplacedOrderId→Order.AssociatedOrderswithassociationTypeEndpoint Consolidation
GetOrderssearchOrdersGetOrdergetOrderwithincludedDataGetOrderItemsgetOrder(items always included)GetOrderBuyerInfogetOrderwithincludedData=BUYERGetOrderAddressgetOrderwithincludedData=RECIPIENTGetOrderItemsBuyerInfogetOrderwithincludedData=BUYERNew Features
includedDataparameter: Controls which data is returned (BUYER, RECIPIENT, FULFILLMENT, PROCEEDS, EXPENSE, PROMOTION, CANCELLATION, PACKAGES) – less data = better performanceincludedData=PACKAGES): Carrier, tracking number, status, detailed status, ship time, ship-from addressAMAZON_HAUL,AMAZON_EASY_SHIP,DELIVERY_BY_AMAZON,AMAZON_BAZAARunitPrice: Per-unit price as displayed on the Amazon product pageGetOrderFullAsync()convenience method: Retrieves all data in a single callNew / Changed Files
Service & URLs:
+ OrderService20260101.cs– service withSearchOrders+GetOrder+ OrdersApiUrls20260101.cs– base URL/orders/2026-01-01~ AmazonConnection.cs– addedOrders20260101propertyParameters:
+ ParameterSearchOrders.cs– replacesParameterOrderListwith a standalonegetParameters()~ ParameterGetOrder.cs– v0 class marked[Obsolete], addedParameterGetOrder20260101with standalonegetParameters()~ ParameterOrderList.cs– marked[Obsolete]Models (namespace
Orders20260101):+ Order20260101.cs– Order, OrderAlias, SalesChannel, AssociatedOrder+ OrderItem20260101.cs– OrderItem, Product, Condition, Price, Customization, Expense, Promotion, Cancellation+ Fulfillment20260101.cs– OrderFulfillment, OrderItemFulfillment, DateTimeWindow, Packing, Shipping, Picking+ BuyerRecipient20260101.cs– Buyer, Recipient, DeliveryAddress+ Proceeds20260101.cs– OrderProceeds, OrderItemProceeds, ProceedsBreakdown, DetailedBreakdown+ Package20260101.cs– Package, PackageStatus+ Enums20260101.cs– IncludedData20260101, FulfillmentStatus20260101, FulfilledBy20260101+ Responses20260101.cs– SearchOrdersResponse, GetOrderResponse20260101, error models+ Money20260101.cs– Money (Amount + CurrencyCode)Utils:
+ OrderConverter.cs–OrderProgramInfo/OrderItemProgramInfohelper for programs mapping~ RateLimitType.cs– added rate limit definitions for new endpointsSamples & Tests:
+ OrdersSample.cs– usage examples covering all new endpointsMigration Notes
OrderConverter.OrderProgramInfo()+OrderConverter.OrderProgramInfoEx()utilitys provides a convenient way to extract program flags from the newprograms[]array into familiar boolean properties.Quick Guide
GetOrder
SearchOrder
FullUsage
Footer
Infos from:
https://developer-docs.amazon.com/sp-api/docs/orders-api-migration-guide
https://developer-docs.amazon.com/sp-api/reference/searchorders
https://developer-docs.amazon.com/sp-api/reference/getorder-3
'+ Some inspiration from the code of the Python Respository:
https://github.com/saleweaver/python-amazon-sp-api/tree/master
Commit Messages Generated by the VS-Plugin (prob. Copilot)
Pull Message Generated by Claude (I suck at long texts so for better readability)
PS: I never did a pull request for a external project so please if something is wired just tell me.