amazon-sp-api-tcat
Version:
Amazon Selling Partner API client
97 lines (88 loc) • 2.19 kB
text/typescript
import type { BaseResponse } from "../baseTypes";
interface MoneyType {
CurrencyCode: string;
Amount: number;
}
type FulfillmentChannel = "Merchant" | "Amazon";
type SubCondition = "acceptable" | "good" | "mint" | "new" | string;
type ItemConditionType =
| "Used"
| "New"
| "Collectible"
| "Refurbished"
| "Club";
type Condition = "used" | "new";
type Status = "Success";
type CustomerType = "Business" | "Customer";
interface SummaryOffers {
condition: Condition;
fulfillmentChannel: FulfillmentChannel;
OfferCount: number;
}
interface SummaryPricesBase {
condition: Condition;
LandedPrice: MoneyType;
ListingPrice: MoneyType;
Shipping: MoneyType;
}
interface LowestPrices extends SummaryPricesBase {
fulfillmentChannel: FulfillmentChannel;
}
export interface GetItemOffersQuery {
MarketplaceId: string;
ItemCondition: ItemConditionType;
CustomerType?: CustomerType;
}
export interface GetItemOffersPath {
Asin: string;
}
export interface GetItemOffersResponse extends BaseResponse {
ASIN: string;
status: Status;
ItemCondition: ItemConditionType;
Identifier: {
MarketplaceId: string;
ItemCondition: ItemConditionType;
ASIN: string;
};
Summary: {
LowestPrices: LowestPrices[];
BuyBoxPrices: SummaryPricesBase[];
NumberOfOffers: SummaryOffers[];
BuyBoxEligibleOffers: SummaryOffers[];
SalesRankings: {
ProductCategoryId: string;
Rank: number;
}[];
ListPrice: MoneyType;
CompetitivePriceThreshold: MoneyType;
TotalOfferCount: number;
};
Offers: {
Shipping: MoneyType;
ListingPrice: MoneyType;
ShippingTime: {
maximumHours: number;
minimumHours: number;
availabilityType: string;
};
SellerFeedbackRating: {
FeedbackCount: number;
SellerPositiveFeedbackRating: number;
};
ShipsFrom: {
Country: string;
};
PrimeInformation: {
IsPrime: boolean;
IsNationalPrime: boolean;
};
SubCondition: SubCondition;
SellerId: string;
ConditionNotes: string;
IsFeaturedMerchant: boolean;
IsBuyBoxWinner: boolean;
IsFulfilledByAmazon: boolean;
}[];
marketplaceId: string;
}