@lonca/trendyol 0.8.0 → 0.9.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +28 -26
- package/dist/index.cjs +326 -7
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +271 -2
- package/dist/index.d.ts +271 -2
- package/dist/index.js +325 -8
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
package/dist/index.d.cts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Logger, TokenBucketRateLimiter, CursorPaginationParams, CursorPage } from '@lonca/core';
|
|
1
|
+
import { Logger, TokenBucketRateLimiter, CursorPaginationParams, CursorPage, OffsetPaginationParams } from '@lonca/core';
|
|
2
2
|
|
|
3
3
|
declare const BASE_URLS: {
|
|
4
4
|
readonly prod: "https://apigw.trendyol.com";
|
|
@@ -403,6 +403,214 @@ declare class ClaimsResource {
|
|
|
403
403
|
getItemAudits(claimItemId: string): Promise<ClaimItemAudit[]>;
|
|
404
404
|
}
|
|
405
405
|
|
|
406
|
+
/**
|
|
407
|
+
* Trendyol Export Center (İhracat Merkezi / AutoFT) types.
|
|
408
|
+
*
|
|
409
|
+
* Source: developers.trendyol.com — `autoft-*` documentation pages.
|
|
410
|
+
*
|
|
411
|
+
* The Export Center is Trendyol's program for sellers exporting from
|
|
412
|
+
* Türkiye to Trendyol's international platforms. It shares the same API
|
|
413
|
+
* gateway (`apigw.trendyol.com`) and HMAC auth as the main marketplace
|
|
414
|
+
* surface — the distinguishing factor is the path prefix:
|
|
415
|
+
* `/integration/ecgw/v{N}/{sellerId}/…`
|
|
416
|
+
*
|
|
417
|
+
* Per-endpoint shapes are loosely typed (`Record<string, unknown>`)
|
|
418
|
+
* because Trendyol's docs document fields in HTML tables; the SDK keeps
|
|
419
|
+
* payloads loose and surfaces the raw response. Operations that need
|
|
420
|
+
* stronger typing in practice should consult the portal pages.
|
|
421
|
+
*/
|
|
422
|
+
|
|
423
|
+
/** Query parameters for `exportCenter.listProducts()`. */
|
|
424
|
+
interface ListExportProductsParams {
|
|
425
|
+
/** Optional list of barcodes to filter to. */
|
|
426
|
+
barcodes?: string[];
|
|
427
|
+
/**
|
|
428
|
+
* Page cursor — empty for the first request, then use the `x-paging-key`
|
|
429
|
+
* value from the previous response's headers for subsequent pages.
|
|
430
|
+
*/
|
|
431
|
+
pageKey?: string;
|
|
432
|
+
/** Page size. Default: 20, max: 100. */
|
|
433
|
+
size?: number;
|
|
434
|
+
}
|
|
435
|
+
/** One product row returned by `listProducts()`. Loose; consult portal for the documented field set. */
|
|
436
|
+
interface ExportProduct {
|
|
437
|
+
/** Untouched raw row. */
|
|
438
|
+
raw: Record<string, unknown>;
|
|
439
|
+
}
|
|
440
|
+
/**
|
|
441
|
+
* Payload for `exportCenter.createProducts()` — see "Ürün Oluşturma V2"
|
|
442
|
+
* on the developer portal for the documented field set per product.
|
|
443
|
+
* Max 5000 items per call.
|
|
444
|
+
*/
|
|
445
|
+
type ExportProductInput = Record<string, unknown>;
|
|
446
|
+
/** Payload for `exportCenter.updatePrices()` — `{ barcode, salePrice, listPrice, ... }` per docs. */
|
|
447
|
+
type ExportPriceUpdateInput = Record<string, unknown>;
|
|
448
|
+
/** Payload for `exportCenter.updateStocks()` — `{ barcode, quantity, ... }` per docs. */
|
|
449
|
+
type ExportStockUpdateInput = Record<string, unknown>;
|
|
450
|
+
/** Returned by every async batch endpoint — poll status via `getBatchStatus(batchId)`. */
|
|
451
|
+
interface ExportBatchAcceptedResponse {
|
|
452
|
+
/** UUID returned by Trendyol. Surfaces in the response body or `Location` header. */
|
|
453
|
+
batchId: string;
|
|
454
|
+
/** Untouched raw response. */
|
|
455
|
+
raw: Record<string, unknown>;
|
|
456
|
+
}
|
|
457
|
+
/** Status of a previously-submitted batch. */
|
|
458
|
+
interface ExportBatchStatus {
|
|
459
|
+
batchId?: string;
|
|
460
|
+
status?: string;
|
|
461
|
+
itemCount?: number;
|
|
462
|
+
failedItemCount?: number;
|
|
463
|
+
items?: Array<Record<string, unknown>>;
|
|
464
|
+
/** Untouched raw row. */
|
|
465
|
+
raw: Record<string, unknown>;
|
|
466
|
+
}
|
|
467
|
+
/** Status enum for Export Center packages — `new | pending | completed | cancelled`. */
|
|
468
|
+
type ExportPackageStatus = 'new' | 'pending' | 'completed' | 'cancelled';
|
|
469
|
+
/** Query parameters for `exportCenter.listPackagesV2()`. */
|
|
470
|
+
interface ListExportPackagesV2Params {
|
|
471
|
+
/** Cargo tracking number filter. */
|
|
472
|
+
trackingNumber?: string;
|
|
473
|
+
/** Status filter. */
|
|
474
|
+
status?: ExportPackageStatus;
|
|
475
|
+
/** UTC milliseconds. */
|
|
476
|
+
creationStartDate?: number;
|
|
477
|
+
/** UTC milliseconds. */
|
|
478
|
+
creationEndDate?: number;
|
|
479
|
+
/** Page size; max 100. */
|
|
480
|
+
size?: number;
|
|
481
|
+
/** Boutique-specific filter (when used by partner businesses). */
|
|
482
|
+
boutiqueId?: number;
|
|
483
|
+
}
|
|
484
|
+
/** Query parameters for `exportCenter.listPackagesV3()`. Uses page-based pagination. */
|
|
485
|
+
interface ListExportPackagesV3Params extends OffsetPaginationParams {
|
|
486
|
+
status?: ExportPackageStatus;
|
|
487
|
+
creationStartDate?: number;
|
|
488
|
+
creationEndDate?: number;
|
|
489
|
+
}
|
|
490
|
+
/** Query parameters for `exportCenter.getPackageItems()`. */
|
|
491
|
+
interface GetExportPackageItemsParams extends OffsetPaginationParams {
|
|
492
|
+
/** Required. */
|
|
493
|
+
packageId: string;
|
|
494
|
+
status?: ExportPackageStatus;
|
|
495
|
+
}
|
|
496
|
+
/** One package row returned by the list endpoints. */
|
|
497
|
+
interface ExportPackage {
|
|
498
|
+
packageNumber?: string;
|
|
499
|
+
status?: ExportPackageStatus;
|
|
500
|
+
/** Untouched raw row. */
|
|
501
|
+
raw: Record<string, unknown>;
|
|
502
|
+
}
|
|
503
|
+
/** One package-item row returned by `getPackageItems()`. */
|
|
504
|
+
interface ExportPackageItem {
|
|
505
|
+
/** Untouched raw row. */
|
|
506
|
+
raw: Record<string, unknown>;
|
|
507
|
+
}
|
|
508
|
+
/** Attribute definition for a leaf Export Center category. */
|
|
509
|
+
interface ExportCategoryAttribute {
|
|
510
|
+
attributeId?: number | string;
|
|
511
|
+
attributeName?: string;
|
|
512
|
+
required?: boolean;
|
|
513
|
+
/** Allowed values (for enum-style attributes). */
|
|
514
|
+
values?: unknown[];
|
|
515
|
+
/** Untouched raw row. */
|
|
516
|
+
raw: Record<string, unknown>;
|
|
517
|
+
}
|
|
518
|
+
/** One care-instruction lookup row. */
|
|
519
|
+
interface CareInstruction {
|
|
520
|
+
id?: number | string;
|
|
521
|
+
name?: string;
|
|
522
|
+
/** Untouched raw row. */
|
|
523
|
+
raw: Record<string, unknown>;
|
|
524
|
+
}
|
|
525
|
+
/** One material-composition lookup row. */
|
|
526
|
+
interface ProductComposition {
|
|
527
|
+
id?: number | string;
|
|
528
|
+
name?: string;
|
|
529
|
+
/** Untouched raw row. */
|
|
530
|
+
raw: Record<string, unknown>;
|
|
531
|
+
}
|
|
532
|
+
/** One country-of-origin lookup row. */
|
|
533
|
+
interface ProductOrigin {
|
|
534
|
+
id?: number | string;
|
|
535
|
+
name?: string;
|
|
536
|
+
countryCode?: string;
|
|
537
|
+
/** Untouched raw row. */
|
|
538
|
+
raw: Record<string, unknown>;
|
|
539
|
+
}
|
|
540
|
+
|
|
541
|
+
/**
|
|
542
|
+
* Trendyol Export Center (İhracat Merkezi / AutoFT) — Türkiye-based
|
|
543
|
+
* sellers exporting to Trendyol's international platforms.
|
|
544
|
+
*
|
|
545
|
+
* **Service base URL**: same `apigw.trendyol.com` as the main marketplace,
|
|
546
|
+
* with a distinct path prefix `/integration/ecgw/v{N}/{sellerId}/…`.
|
|
547
|
+
*
|
|
548
|
+
* The Export Center requires sellers to first complete Trendyol's "İhracat
|
|
549
|
+
* Merkezi" application; the same `apiKey`/`apiSecret` then authorize
|
|
550
|
+
* these paths. Calls from non-enrolled sellers return `401`.
|
|
551
|
+
*
|
|
552
|
+
* 12 endpoints across four surfaces — products (list/create/price/stock),
|
|
553
|
+
* batch status, packages (V2/V3 list + item detail), and lookup
|
|
554
|
+
* (categories, care instructions, compositions, origins).
|
|
555
|
+
*
|
|
556
|
+
* NOTE: per-endpoint body / response shapes are documented in HTML tables
|
|
557
|
+
* on developers.trendyol.com — the SDK accepts `Record<string, unknown>`
|
|
558
|
+
* bodies and surfaces row-level `raw` accessors so undocumented fields
|
|
559
|
+
* stay reachable.
|
|
560
|
+
*/
|
|
561
|
+
declare class ExportCenterResource {
|
|
562
|
+
private readonly transport;
|
|
563
|
+
private readonly limiter;
|
|
564
|
+
constructor(transport: TrendyolTransport, limiter?: TokenBucketRateLimiter);
|
|
565
|
+
/**
|
|
566
|
+
* List Export Center-approved products. Uses Trendyol's `pageKey`
|
|
567
|
+
* pagination — the first call leaves `pageKey` empty; subsequent
|
|
568
|
+
* calls pass the `x-paging-key` value from the previous response.
|
|
569
|
+
*/
|
|
570
|
+
listProducts(params?: ListExportProductsParams): Promise<ExportProduct[]>;
|
|
571
|
+
/**
|
|
572
|
+
* Create Export Center products. Maximum 5000 per call. Returns a
|
|
573
|
+
* `batchId` you can poll via `getBatchStatus(batchId)`.
|
|
574
|
+
*
|
|
575
|
+
* @throws {ValidationError} when `products` is empty / oversized.
|
|
576
|
+
*/
|
|
577
|
+
createProducts(products: ExportProductInput[]): Promise<ExportBatchAcceptedResponse>;
|
|
578
|
+
/**
|
|
579
|
+
* Update Export Center prices. **Trendyol allows one price update per
|
|
580
|
+
* barcode per day.** Returns a `batchId`.
|
|
581
|
+
*
|
|
582
|
+
* @throws {ValidationError} when `priceInfos` is empty / oversized.
|
|
583
|
+
*/
|
|
584
|
+
updatePrices(priceInfos: ExportPriceUpdateInput[]): Promise<ExportBatchAcceptedResponse>;
|
|
585
|
+
/**
|
|
586
|
+
* Update Export Center stocks. Returns a `batchId`. Sellers using
|
|
587
|
+
* Trendyol's shared inventory cannot use this endpoint (per portal docs).
|
|
588
|
+
*
|
|
589
|
+
* @throws {ValidationError} when `items` is empty / oversized.
|
|
590
|
+
*/
|
|
591
|
+
updateStocks(items: ExportStockUpdateInput[]): Promise<ExportBatchAcceptedResponse>;
|
|
592
|
+
/**
|
|
593
|
+
* Look up the status of a previously-submitted batch. Trendyol retains
|
|
594
|
+
* batch records for **24 hours** only — older `batchId`s return `404`.
|
|
595
|
+
*/
|
|
596
|
+
getBatchStatus(batchId: string): Promise<ExportBatchStatus>;
|
|
597
|
+
/** List daily Export Center packages (V2 — query-based filters). */
|
|
598
|
+
listPackagesV2(params?: ListExportPackagesV2Params): Promise<ExportPackage[]>;
|
|
599
|
+
/** List Export Center packages (V3 — consolidated, page-based). */
|
|
600
|
+
listPackagesV3(params?: ListExportPackagesV3Params): Promise<ExportPackage[]>;
|
|
601
|
+
/** Get the line items inside an Export Center package. */
|
|
602
|
+
getPackageItems(params: GetExportPackageItemsParams): Promise<ExportPackageItem[]>;
|
|
603
|
+
/** Get the required attributes for an Export Center category. */
|
|
604
|
+
getCategoryAttributes(categoryId: number | string): Promise<ExportCategoryAttribute[]>;
|
|
605
|
+
/** Get the care-instruction lookup values used by `createProducts`. */
|
|
606
|
+
getCareInstructions(): Promise<CareInstruction[]>;
|
|
607
|
+
/** Get the material-composition lookup values used by `createProducts`. */
|
|
608
|
+
getCompositions(): Promise<ProductComposition[]>;
|
|
609
|
+
/** Get the country-of-origin lookup values used by `createProducts`. */
|
|
610
|
+
getOrigins(): Promise<ProductOrigin[]>;
|
|
611
|
+
private assertBatch;
|
|
612
|
+
}
|
|
613
|
+
|
|
406
614
|
/**
|
|
407
615
|
* Misc types for Trendyol's smaller surfaces — invoices, finance,
|
|
408
616
|
* common labels, test orders, and location lookups. Most shapes are
|
|
@@ -2023,6 +2231,65 @@ declare class TestOrdersResource {
|
|
|
2023
2231
|
setClaimsWaitingInAction(): Promise<unknown>;
|
|
2024
2232
|
}
|
|
2025
2233
|
|
|
2234
|
+
/**
|
|
2235
|
+
* Trendyol Video API types — product video upload + listing.
|
|
2236
|
+
*
|
|
2237
|
+
* Source: developers.trendyol.com / `seller-integration-video-api`.
|
|
2238
|
+
*
|
|
2239
|
+
* Endpoints under `/integration/video/sellers/{sellerId}/videos`.
|
|
2240
|
+
*/
|
|
2241
|
+
|
|
2242
|
+
/**
|
|
2243
|
+
* Status of a seller integration video as Trendyol processes it. Open
|
|
2244
|
+
* union — Trendyol may add new statuses without an SDK release.
|
|
2245
|
+
*/
|
|
2246
|
+
type SellerIntegrationStatus = 'WAITING' | 'IN_PROGRESS' | 'COMPLETED' | 'FAILED' | (string & {});
|
|
2247
|
+
/** Body for `videos.create()` — initiates an async download + processing. */
|
|
2248
|
+
type CreateVideoInput = Record<string, unknown>;
|
|
2249
|
+
/** Query parameters for `videos.list()`. */
|
|
2250
|
+
interface ListVideosParams extends OffsetPaginationParams {
|
|
2251
|
+
/** Filter by a single video id. */
|
|
2252
|
+
id?: string;
|
|
2253
|
+
/** Filter by processing status. */
|
|
2254
|
+
sellerIntegrationStatus?: SellerIntegrationStatus;
|
|
2255
|
+
}
|
|
2256
|
+
/** One video row returned by `videos.list()`. */
|
|
2257
|
+
interface SellerVideo {
|
|
2258
|
+
id?: string;
|
|
2259
|
+
status?: SellerIntegrationStatus;
|
|
2260
|
+
/** Untouched raw row. */
|
|
2261
|
+
raw: Record<string, unknown>;
|
|
2262
|
+
}
|
|
2263
|
+
|
|
2264
|
+
/**
|
|
2265
|
+
* Trendyol Video API (`seller-integration-video-api`) — product video
|
|
2266
|
+
* uploads. Upload happens server-side from a URL the seller provides;
|
|
2267
|
+
* the SDK exposes the create + list endpoints.
|
|
2268
|
+
*
|
|
2269
|
+
* Base path: `/integration/video/sellers/{sellerId}/videos`.
|
|
2270
|
+
* Trendyol publishes per-endpoint rate limits — `create` at 200 req/min,
|
|
2271
|
+
* `list` at 1000 req/min — which the SDK provisions as two separate
|
|
2272
|
+
* token buckets so listing doesn't exhaust the create budget.
|
|
2273
|
+
*/
|
|
2274
|
+
declare class VideosResource {
|
|
2275
|
+
private readonly transport;
|
|
2276
|
+
private readonly createLimiter;
|
|
2277
|
+
private readonly listLimiter;
|
|
2278
|
+
constructor(transport: TrendyolTransport, options?: {
|
|
2279
|
+
createLimiter?: TokenBucketRateLimiter;
|
|
2280
|
+
listLimiter?: TokenBucketRateLimiter;
|
|
2281
|
+
});
|
|
2282
|
+
/**
|
|
2283
|
+
* Queue a video for upload. Trendyol downloads from the URL in the
|
|
2284
|
+
* body asynchronously; poll `list()` (filtered by id) for status.
|
|
2285
|
+
*
|
|
2286
|
+
* @throws {ValidationError} when `input` is empty / not an object.
|
|
2287
|
+
*/
|
|
2288
|
+
create(input: CreateVideoInput): Promise<unknown>;
|
|
2289
|
+
/** List the seller's integration videos (optionally filtered by id / status). */
|
|
2290
|
+
list(params?: ListVideosParams): Promise<SellerVideo[]>;
|
|
2291
|
+
}
|
|
2292
|
+
|
|
2026
2293
|
/**
|
|
2027
2294
|
* Trendyol webhook subscription types.
|
|
2028
2295
|
*
|
|
@@ -2161,6 +2428,8 @@ interface TrendyolClient {
|
|
|
2161
2428
|
labels: LabelsResource;
|
|
2162
2429
|
testOrders: TestOrdersResource;
|
|
2163
2430
|
locations: LocationsResource;
|
|
2431
|
+
exportCenter: ExportCenterResource;
|
|
2432
|
+
videos: VideosResource;
|
|
2164
2433
|
}
|
|
2165
2434
|
/**
|
|
2166
2435
|
* Create a Trendyol Marketplace SDK client.
|
|
@@ -2269,4 +2538,4 @@ interface WebhookEvent {
|
|
|
2269
2538
|
*/
|
|
2270
2539
|
declare function parseWebhookEvent(rawBody: unknown): WebhookEvent;
|
|
2271
2540
|
|
|
2272
|
-
export { type ApproveClaimLineItemsInput, type BarcodeCategoryLookup, type BatchAcceptedResponse, type BatchRequestItemResult, type BatchRequestResult, type BatchRequestStatus, type Brand, BrandsResource, type BuyboxInfo, type CancelPackageItemInput, type CargoInvoiceItem, CategoriesResource, type Category, type CategoryAttribute, type CategoryAttributeValue, type City, type Claim, type ClaimIssueReason, type ClaimItemAudit, type ClaimItemStatus, ClaimsResource, type CommonLabel, type CommonLabelEntry, type CompensationItemDetail, type CompensationTicket, type CompensationTicketState, type Country, type CreateClaimInput, type CreateClaimIssueInput, type CreateClaimItemInput, type CreateClientOptions, type CreateCommonLabelInput, type CreateProductV2Input, type CreateTestOrderInput, type DeleteInvoiceLinkInput, type DeliveryOptionInput, type District, FinanceResource, type FinancialTransaction, InventoryResource, InvoicesResource, LabelsResource, type LaborCostInput, type ListCategoryAttributeValuesParams, type ListClaimsParams, type ListCompensationTicketsParams, type ListFinanceParams, type ListOrdersParams, type ListOrdersStreamParams, type ListProductsParams, type ListQuestionsParams, type ListUnapprovedProductsParams, LocationsResource, type NamedRef, type Neighborhood, type OrderAddress, type OrderAddressLines, type OrderCustomer, type OrderLine, type OrderLineDiscountDetail, OrdersResource, type OtherFinancialRow, type PackageCreatedBy, type PackageDetail, type PackageHistoryEntry, type PackageLineUpdate, type PriceInventoryUpdate, type ProcessAlternativeDeliveryInput, type Product, type ProductAttribute, type ProductAttributeV2Input, type ProductBase, type ProductImageInput, type ProductVariant, ProductsResource, type QuantitySplit, type Question, type QuestionAnswer, type QuestionStatus, QuestionsResource, type SendInvoiceLinkInput, type SettlementRow, type ShipmentPackage, type ShipmentPackageStatus, type SplitGroup, type SplitPackagePlan, type SupplierAddress, type SupplierAddressType, SuppliersResource, type SuppliersResourceOptions, type TestOrderStatus, TestOrdersResource, type TrendyolCargoProvider, type TrendyolClient, type TrendyolEnvironment, type UnapprovedDateQueryType, type UnapprovedProduct, type UnapprovedProductRejectReason, type UnapprovedProductStatus, type UpdateBoxInfoInput, type UpdateContentInput, type UpdateDeliveryInfoInput, type UpdatePackageStatusInput, type UpdatePriceInventoryResponse, type UpdateUnapprovedInput, type UpdateVariantInput, type UploadInvoiceFileInput, type Webhook, type WebhookAuthenticationType, type WebhookEvent, type WebhookEventStatus, type WebhookInput, WebhooksResource, createTrendyolClient, normalizeShipmentPackage, parseWebhookEvent };
|
|
2541
|
+
export { type ApproveClaimLineItemsInput, type BarcodeCategoryLookup, type BatchAcceptedResponse, type BatchRequestItemResult, type BatchRequestResult, type BatchRequestStatus, type Brand, BrandsResource, type BuyboxInfo, type CancelPackageItemInput, type CareInstruction, type CargoInvoiceItem, CategoriesResource, type Category, type CategoryAttribute, type CategoryAttributeValue, type City, type Claim, type ClaimIssueReason, type ClaimItemAudit, type ClaimItemStatus, ClaimsResource, type CommonLabel, type CommonLabelEntry, type CompensationItemDetail, type CompensationTicket, type CompensationTicketState, type Country, type CreateClaimInput, type CreateClaimIssueInput, type CreateClaimItemInput, type CreateClientOptions, type CreateCommonLabelInput, type CreateProductV2Input, type CreateTestOrderInput, type CreateVideoInput, type DeleteInvoiceLinkInput, type DeliveryOptionInput, type District, type ExportBatchAcceptedResponse, type ExportBatchStatus, type ExportCategoryAttribute, ExportCenterResource, type ExportPackage, type ExportPackageItem, type ExportPackageStatus, type ExportPriceUpdateInput, type ExportProduct, type ExportProductInput, type ExportStockUpdateInput, FinanceResource, type FinancialTransaction, type GetExportPackageItemsParams, InventoryResource, InvoicesResource, LabelsResource, type LaborCostInput, type ListCategoryAttributeValuesParams, type ListClaimsParams, type ListCompensationTicketsParams, type ListExportPackagesV2Params, type ListExportPackagesV3Params, type ListExportProductsParams, type ListFinanceParams, type ListOrdersParams, type ListOrdersStreamParams, type ListProductsParams, type ListQuestionsParams, type ListUnapprovedProductsParams, type ListVideosParams, LocationsResource, type NamedRef, type Neighborhood, type OrderAddress, type OrderAddressLines, type OrderCustomer, type OrderLine, type OrderLineDiscountDetail, OrdersResource, type OtherFinancialRow, type PackageCreatedBy, type PackageDetail, type PackageHistoryEntry, type PackageLineUpdate, type PriceInventoryUpdate, type ProcessAlternativeDeliveryInput, type Product, type ProductAttribute, type ProductAttributeV2Input, type ProductBase, type ProductComposition, type ProductImageInput, type ProductOrigin, type ProductVariant, ProductsResource, type QuantitySplit, type Question, type QuestionAnswer, type QuestionStatus, QuestionsResource, type SellerIntegrationStatus, type SellerVideo, type SendInvoiceLinkInput, type SettlementRow, type ShipmentPackage, type ShipmentPackageStatus, type SplitGroup, type SplitPackagePlan, type SupplierAddress, type SupplierAddressType, SuppliersResource, type SuppliersResourceOptions, type TestOrderStatus, TestOrdersResource, type TrendyolCargoProvider, type TrendyolClient, type TrendyolEnvironment, type UnapprovedDateQueryType, type UnapprovedProduct, type UnapprovedProductRejectReason, type UnapprovedProductStatus, type UpdateBoxInfoInput, type UpdateContentInput, type UpdateDeliveryInfoInput, type UpdatePackageStatusInput, type UpdatePriceInventoryResponse, type UpdateUnapprovedInput, type UpdateVariantInput, type UploadInvoiceFileInput, VideosResource, type Webhook, type WebhookAuthenticationType, type WebhookEvent, type WebhookEventStatus, type WebhookInput, WebhooksResource, createTrendyolClient, normalizeShipmentPackage, parseWebhookEvent };
|
package/dist/index.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Logger, TokenBucketRateLimiter, CursorPaginationParams, CursorPage } from '@lonca/core';
|
|
1
|
+
import { Logger, TokenBucketRateLimiter, CursorPaginationParams, CursorPage, OffsetPaginationParams } from '@lonca/core';
|
|
2
2
|
|
|
3
3
|
declare const BASE_URLS: {
|
|
4
4
|
readonly prod: "https://apigw.trendyol.com";
|
|
@@ -403,6 +403,214 @@ declare class ClaimsResource {
|
|
|
403
403
|
getItemAudits(claimItemId: string): Promise<ClaimItemAudit[]>;
|
|
404
404
|
}
|
|
405
405
|
|
|
406
|
+
/**
|
|
407
|
+
* Trendyol Export Center (İhracat Merkezi / AutoFT) types.
|
|
408
|
+
*
|
|
409
|
+
* Source: developers.trendyol.com — `autoft-*` documentation pages.
|
|
410
|
+
*
|
|
411
|
+
* The Export Center is Trendyol's program for sellers exporting from
|
|
412
|
+
* Türkiye to Trendyol's international platforms. It shares the same API
|
|
413
|
+
* gateway (`apigw.trendyol.com`) and HMAC auth as the main marketplace
|
|
414
|
+
* surface — the distinguishing factor is the path prefix:
|
|
415
|
+
* `/integration/ecgw/v{N}/{sellerId}/…`
|
|
416
|
+
*
|
|
417
|
+
* Per-endpoint shapes are loosely typed (`Record<string, unknown>`)
|
|
418
|
+
* because Trendyol's docs document fields in HTML tables; the SDK keeps
|
|
419
|
+
* payloads loose and surfaces the raw response. Operations that need
|
|
420
|
+
* stronger typing in practice should consult the portal pages.
|
|
421
|
+
*/
|
|
422
|
+
|
|
423
|
+
/** Query parameters for `exportCenter.listProducts()`. */
|
|
424
|
+
interface ListExportProductsParams {
|
|
425
|
+
/** Optional list of barcodes to filter to. */
|
|
426
|
+
barcodes?: string[];
|
|
427
|
+
/**
|
|
428
|
+
* Page cursor — empty for the first request, then use the `x-paging-key`
|
|
429
|
+
* value from the previous response's headers for subsequent pages.
|
|
430
|
+
*/
|
|
431
|
+
pageKey?: string;
|
|
432
|
+
/** Page size. Default: 20, max: 100. */
|
|
433
|
+
size?: number;
|
|
434
|
+
}
|
|
435
|
+
/** One product row returned by `listProducts()`. Loose; consult portal for the documented field set. */
|
|
436
|
+
interface ExportProduct {
|
|
437
|
+
/** Untouched raw row. */
|
|
438
|
+
raw: Record<string, unknown>;
|
|
439
|
+
}
|
|
440
|
+
/**
|
|
441
|
+
* Payload for `exportCenter.createProducts()` — see "Ürün Oluşturma V2"
|
|
442
|
+
* on the developer portal for the documented field set per product.
|
|
443
|
+
* Max 5000 items per call.
|
|
444
|
+
*/
|
|
445
|
+
type ExportProductInput = Record<string, unknown>;
|
|
446
|
+
/** Payload for `exportCenter.updatePrices()` — `{ barcode, salePrice, listPrice, ... }` per docs. */
|
|
447
|
+
type ExportPriceUpdateInput = Record<string, unknown>;
|
|
448
|
+
/** Payload for `exportCenter.updateStocks()` — `{ barcode, quantity, ... }` per docs. */
|
|
449
|
+
type ExportStockUpdateInput = Record<string, unknown>;
|
|
450
|
+
/** Returned by every async batch endpoint — poll status via `getBatchStatus(batchId)`. */
|
|
451
|
+
interface ExportBatchAcceptedResponse {
|
|
452
|
+
/** UUID returned by Trendyol. Surfaces in the response body or `Location` header. */
|
|
453
|
+
batchId: string;
|
|
454
|
+
/** Untouched raw response. */
|
|
455
|
+
raw: Record<string, unknown>;
|
|
456
|
+
}
|
|
457
|
+
/** Status of a previously-submitted batch. */
|
|
458
|
+
interface ExportBatchStatus {
|
|
459
|
+
batchId?: string;
|
|
460
|
+
status?: string;
|
|
461
|
+
itemCount?: number;
|
|
462
|
+
failedItemCount?: number;
|
|
463
|
+
items?: Array<Record<string, unknown>>;
|
|
464
|
+
/** Untouched raw row. */
|
|
465
|
+
raw: Record<string, unknown>;
|
|
466
|
+
}
|
|
467
|
+
/** Status enum for Export Center packages — `new | pending | completed | cancelled`. */
|
|
468
|
+
type ExportPackageStatus = 'new' | 'pending' | 'completed' | 'cancelled';
|
|
469
|
+
/** Query parameters for `exportCenter.listPackagesV2()`. */
|
|
470
|
+
interface ListExportPackagesV2Params {
|
|
471
|
+
/** Cargo tracking number filter. */
|
|
472
|
+
trackingNumber?: string;
|
|
473
|
+
/** Status filter. */
|
|
474
|
+
status?: ExportPackageStatus;
|
|
475
|
+
/** UTC milliseconds. */
|
|
476
|
+
creationStartDate?: number;
|
|
477
|
+
/** UTC milliseconds. */
|
|
478
|
+
creationEndDate?: number;
|
|
479
|
+
/** Page size; max 100. */
|
|
480
|
+
size?: number;
|
|
481
|
+
/** Boutique-specific filter (when used by partner businesses). */
|
|
482
|
+
boutiqueId?: number;
|
|
483
|
+
}
|
|
484
|
+
/** Query parameters for `exportCenter.listPackagesV3()`. Uses page-based pagination. */
|
|
485
|
+
interface ListExportPackagesV3Params extends OffsetPaginationParams {
|
|
486
|
+
status?: ExportPackageStatus;
|
|
487
|
+
creationStartDate?: number;
|
|
488
|
+
creationEndDate?: number;
|
|
489
|
+
}
|
|
490
|
+
/** Query parameters for `exportCenter.getPackageItems()`. */
|
|
491
|
+
interface GetExportPackageItemsParams extends OffsetPaginationParams {
|
|
492
|
+
/** Required. */
|
|
493
|
+
packageId: string;
|
|
494
|
+
status?: ExportPackageStatus;
|
|
495
|
+
}
|
|
496
|
+
/** One package row returned by the list endpoints. */
|
|
497
|
+
interface ExportPackage {
|
|
498
|
+
packageNumber?: string;
|
|
499
|
+
status?: ExportPackageStatus;
|
|
500
|
+
/** Untouched raw row. */
|
|
501
|
+
raw: Record<string, unknown>;
|
|
502
|
+
}
|
|
503
|
+
/** One package-item row returned by `getPackageItems()`. */
|
|
504
|
+
interface ExportPackageItem {
|
|
505
|
+
/** Untouched raw row. */
|
|
506
|
+
raw: Record<string, unknown>;
|
|
507
|
+
}
|
|
508
|
+
/** Attribute definition for a leaf Export Center category. */
|
|
509
|
+
interface ExportCategoryAttribute {
|
|
510
|
+
attributeId?: number | string;
|
|
511
|
+
attributeName?: string;
|
|
512
|
+
required?: boolean;
|
|
513
|
+
/** Allowed values (for enum-style attributes). */
|
|
514
|
+
values?: unknown[];
|
|
515
|
+
/** Untouched raw row. */
|
|
516
|
+
raw: Record<string, unknown>;
|
|
517
|
+
}
|
|
518
|
+
/** One care-instruction lookup row. */
|
|
519
|
+
interface CareInstruction {
|
|
520
|
+
id?: number | string;
|
|
521
|
+
name?: string;
|
|
522
|
+
/** Untouched raw row. */
|
|
523
|
+
raw: Record<string, unknown>;
|
|
524
|
+
}
|
|
525
|
+
/** One material-composition lookup row. */
|
|
526
|
+
interface ProductComposition {
|
|
527
|
+
id?: number | string;
|
|
528
|
+
name?: string;
|
|
529
|
+
/** Untouched raw row. */
|
|
530
|
+
raw: Record<string, unknown>;
|
|
531
|
+
}
|
|
532
|
+
/** One country-of-origin lookup row. */
|
|
533
|
+
interface ProductOrigin {
|
|
534
|
+
id?: number | string;
|
|
535
|
+
name?: string;
|
|
536
|
+
countryCode?: string;
|
|
537
|
+
/** Untouched raw row. */
|
|
538
|
+
raw: Record<string, unknown>;
|
|
539
|
+
}
|
|
540
|
+
|
|
541
|
+
/**
|
|
542
|
+
* Trendyol Export Center (İhracat Merkezi / AutoFT) — Türkiye-based
|
|
543
|
+
* sellers exporting to Trendyol's international platforms.
|
|
544
|
+
*
|
|
545
|
+
* **Service base URL**: same `apigw.trendyol.com` as the main marketplace,
|
|
546
|
+
* with a distinct path prefix `/integration/ecgw/v{N}/{sellerId}/…`.
|
|
547
|
+
*
|
|
548
|
+
* The Export Center requires sellers to first complete Trendyol's "İhracat
|
|
549
|
+
* Merkezi" application; the same `apiKey`/`apiSecret` then authorize
|
|
550
|
+
* these paths. Calls from non-enrolled sellers return `401`.
|
|
551
|
+
*
|
|
552
|
+
* 12 endpoints across four surfaces — products (list/create/price/stock),
|
|
553
|
+
* batch status, packages (V2/V3 list + item detail), and lookup
|
|
554
|
+
* (categories, care instructions, compositions, origins).
|
|
555
|
+
*
|
|
556
|
+
* NOTE: per-endpoint body / response shapes are documented in HTML tables
|
|
557
|
+
* on developers.trendyol.com — the SDK accepts `Record<string, unknown>`
|
|
558
|
+
* bodies and surfaces row-level `raw` accessors so undocumented fields
|
|
559
|
+
* stay reachable.
|
|
560
|
+
*/
|
|
561
|
+
declare class ExportCenterResource {
|
|
562
|
+
private readonly transport;
|
|
563
|
+
private readonly limiter;
|
|
564
|
+
constructor(transport: TrendyolTransport, limiter?: TokenBucketRateLimiter);
|
|
565
|
+
/**
|
|
566
|
+
* List Export Center-approved products. Uses Trendyol's `pageKey`
|
|
567
|
+
* pagination — the first call leaves `pageKey` empty; subsequent
|
|
568
|
+
* calls pass the `x-paging-key` value from the previous response.
|
|
569
|
+
*/
|
|
570
|
+
listProducts(params?: ListExportProductsParams): Promise<ExportProduct[]>;
|
|
571
|
+
/**
|
|
572
|
+
* Create Export Center products. Maximum 5000 per call. Returns a
|
|
573
|
+
* `batchId` you can poll via `getBatchStatus(batchId)`.
|
|
574
|
+
*
|
|
575
|
+
* @throws {ValidationError} when `products` is empty / oversized.
|
|
576
|
+
*/
|
|
577
|
+
createProducts(products: ExportProductInput[]): Promise<ExportBatchAcceptedResponse>;
|
|
578
|
+
/**
|
|
579
|
+
* Update Export Center prices. **Trendyol allows one price update per
|
|
580
|
+
* barcode per day.** Returns a `batchId`.
|
|
581
|
+
*
|
|
582
|
+
* @throws {ValidationError} when `priceInfos` is empty / oversized.
|
|
583
|
+
*/
|
|
584
|
+
updatePrices(priceInfos: ExportPriceUpdateInput[]): Promise<ExportBatchAcceptedResponse>;
|
|
585
|
+
/**
|
|
586
|
+
* Update Export Center stocks. Returns a `batchId`. Sellers using
|
|
587
|
+
* Trendyol's shared inventory cannot use this endpoint (per portal docs).
|
|
588
|
+
*
|
|
589
|
+
* @throws {ValidationError} when `items` is empty / oversized.
|
|
590
|
+
*/
|
|
591
|
+
updateStocks(items: ExportStockUpdateInput[]): Promise<ExportBatchAcceptedResponse>;
|
|
592
|
+
/**
|
|
593
|
+
* Look up the status of a previously-submitted batch. Trendyol retains
|
|
594
|
+
* batch records for **24 hours** only — older `batchId`s return `404`.
|
|
595
|
+
*/
|
|
596
|
+
getBatchStatus(batchId: string): Promise<ExportBatchStatus>;
|
|
597
|
+
/** List daily Export Center packages (V2 — query-based filters). */
|
|
598
|
+
listPackagesV2(params?: ListExportPackagesV2Params): Promise<ExportPackage[]>;
|
|
599
|
+
/** List Export Center packages (V3 — consolidated, page-based). */
|
|
600
|
+
listPackagesV3(params?: ListExportPackagesV3Params): Promise<ExportPackage[]>;
|
|
601
|
+
/** Get the line items inside an Export Center package. */
|
|
602
|
+
getPackageItems(params: GetExportPackageItemsParams): Promise<ExportPackageItem[]>;
|
|
603
|
+
/** Get the required attributes for an Export Center category. */
|
|
604
|
+
getCategoryAttributes(categoryId: number | string): Promise<ExportCategoryAttribute[]>;
|
|
605
|
+
/** Get the care-instruction lookup values used by `createProducts`. */
|
|
606
|
+
getCareInstructions(): Promise<CareInstruction[]>;
|
|
607
|
+
/** Get the material-composition lookup values used by `createProducts`. */
|
|
608
|
+
getCompositions(): Promise<ProductComposition[]>;
|
|
609
|
+
/** Get the country-of-origin lookup values used by `createProducts`. */
|
|
610
|
+
getOrigins(): Promise<ProductOrigin[]>;
|
|
611
|
+
private assertBatch;
|
|
612
|
+
}
|
|
613
|
+
|
|
406
614
|
/**
|
|
407
615
|
* Misc types for Trendyol's smaller surfaces — invoices, finance,
|
|
408
616
|
* common labels, test orders, and location lookups. Most shapes are
|
|
@@ -2023,6 +2231,65 @@ declare class TestOrdersResource {
|
|
|
2023
2231
|
setClaimsWaitingInAction(): Promise<unknown>;
|
|
2024
2232
|
}
|
|
2025
2233
|
|
|
2234
|
+
/**
|
|
2235
|
+
* Trendyol Video API types — product video upload + listing.
|
|
2236
|
+
*
|
|
2237
|
+
* Source: developers.trendyol.com / `seller-integration-video-api`.
|
|
2238
|
+
*
|
|
2239
|
+
* Endpoints under `/integration/video/sellers/{sellerId}/videos`.
|
|
2240
|
+
*/
|
|
2241
|
+
|
|
2242
|
+
/**
|
|
2243
|
+
* Status of a seller integration video as Trendyol processes it. Open
|
|
2244
|
+
* union — Trendyol may add new statuses without an SDK release.
|
|
2245
|
+
*/
|
|
2246
|
+
type SellerIntegrationStatus = 'WAITING' | 'IN_PROGRESS' | 'COMPLETED' | 'FAILED' | (string & {});
|
|
2247
|
+
/** Body for `videos.create()` — initiates an async download + processing. */
|
|
2248
|
+
type CreateVideoInput = Record<string, unknown>;
|
|
2249
|
+
/** Query parameters for `videos.list()`. */
|
|
2250
|
+
interface ListVideosParams extends OffsetPaginationParams {
|
|
2251
|
+
/** Filter by a single video id. */
|
|
2252
|
+
id?: string;
|
|
2253
|
+
/** Filter by processing status. */
|
|
2254
|
+
sellerIntegrationStatus?: SellerIntegrationStatus;
|
|
2255
|
+
}
|
|
2256
|
+
/** One video row returned by `videos.list()`. */
|
|
2257
|
+
interface SellerVideo {
|
|
2258
|
+
id?: string;
|
|
2259
|
+
status?: SellerIntegrationStatus;
|
|
2260
|
+
/** Untouched raw row. */
|
|
2261
|
+
raw: Record<string, unknown>;
|
|
2262
|
+
}
|
|
2263
|
+
|
|
2264
|
+
/**
|
|
2265
|
+
* Trendyol Video API (`seller-integration-video-api`) — product video
|
|
2266
|
+
* uploads. Upload happens server-side from a URL the seller provides;
|
|
2267
|
+
* the SDK exposes the create + list endpoints.
|
|
2268
|
+
*
|
|
2269
|
+
* Base path: `/integration/video/sellers/{sellerId}/videos`.
|
|
2270
|
+
* Trendyol publishes per-endpoint rate limits — `create` at 200 req/min,
|
|
2271
|
+
* `list` at 1000 req/min — which the SDK provisions as two separate
|
|
2272
|
+
* token buckets so listing doesn't exhaust the create budget.
|
|
2273
|
+
*/
|
|
2274
|
+
declare class VideosResource {
|
|
2275
|
+
private readonly transport;
|
|
2276
|
+
private readonly createLimiter;
|
|
2277
|
+
private readonly listLimiter;
|
|
2278
|
+
constructor(transport: TrendyolTransport, options?: {
|
|
2279
|
+
createLimiter?: TokenBucketRateLimiter;
|
|
2280
|
+
listLimiter?: TokenBucketRateLimiter;
|
|
2281
|
+
});
|
|
2282
|
+
/**
|
|
2283
|
+
* Queue a video for upload. Trendyol downloads from the URL in the
|
|
2284
|
+
* body asynchronously; poll `list()` (filtered by id) for status.
|
|
2285
|
+
*
|
|
2286
|
+
* @throws {ValidationError} when `input` is empty / not an object.
|
|
2287
|
+
*/
|
|
2288
|
+
create(input: CreateVideoInput): Promise<unknown>;
|
|
2289
|
+
/** List the seller's integration videos (optionally filtered by id / status). */
|
|
2290
|
+
list(params?: ListVideosParams): Promise<SellerVideo[]>;
|
|
2291
|
+
}
|
|
2292
|
+
|
|
2026
2293
|
/**
|
|
2027
2294
|
* Trendyol webhook subscription types.
|
|
2028
2295
|
*
|
|
@@ -2161,6 +2428,8 @@ interface TrendyolClient {
|
|
|
2161
2428
|
labels: LabelsResource;
|
|
2162
2429
|
testOrders: TestOrdersResource;
|
|
2163
2430
|
locations: LocationsResource;
|
|
2431
|
+
exportCenter: ExportCenterResource;
|
|
2432
|
+
videos: VideosResource;
|
|
2164
2433
|
}
|
|
2165
2434
|
/**
|
|
2166
2435
|
* Create a Trendyol Marketplace SDK client.
|
|
@@ -2269,4 +2538,4 @@ interface WebhookEvent {
|
|
|
2269
2538
|
*/
|
|
2270
2539
|
declare function parseWebhookEvent(rawBody: unknown): WebhookEvent;
|
|
2271
2540
|
|
|
2272
|
-
export { type ApproveClaimLineItemsInput, type BarcodeCategoryLookup, type BatchAcceptedResponse, type BatchRequestItemResult, type BatchRequestResult, type BatchRequestStatus, type Brand, BrandsResource, type BuyboxInfo, type CancelPackageItemInput, type CargoInvoiceItem, CategoriesResource, type Category, type CategoryAttribute, type CategoryAttributeValue, type City, type Claim, type ClaimIssueReason, type ClaimItemAudit, type ClaimItemStatus, ClaimsResource, type CommonLabel, type CommonLabelEntry, type CompensationItemDetail, type CompensationTicket, type CompensationTicketState, type Country, type CreateClaimInput, type CreateClaimIssueInput, type CreateClaimItemInput, type CreateClientOptions, type CreateCommonLabelInput, type CreateProductV2Input, type CreateTestOrderInput, type DeleteInvoiceLinkInput, type DeliveryOptionInput, type District, FinanceResource, type FinancialTransaction, InventoryResource, InvoicesResource, LabelsResource, type LaborCostInput, type ListCategoryAttributeValuesParams, type ListClaimsParams, type ListCompensationTicketsParams, type ListFinanceParams, type ListOrdersParams, type ListOrdersStreamParams, type ListProductsParams, type ListQuestionsParams, type ListUnapprovedProductsParams, LocationsResource, type NamedRef, type Neighborhood, type OrderAddress, type OrderAddressLines, type OrderCustomer, type OrderLine, type OrderLineDiscountDetail, OrdersResource, type OtherFinancialRow, type PackageCreatedBy, type PackageDetail, type PackageHistoryEntry, type PackageLineUpdate, type PriceInventoryUpdate, type ProcessAlternativeDeliveryInput, type Product, type ProductAttribute, type ProductAttributeV2Input, type ProductBase, type ProductImageInput, type ProductVariant, ProductsResource, type QuantitySplit, type Question, type QuestionAnswer, type QuestionStatus, QuestionsResource, type SendInvoiceLinkInput, type SettlementRow, type ShipmentPackage, type ShipmentPackageStatus, type SplitGroup, type SplitPackagePlan, type SupplierAddress, type SupplierAddressType, SuppliersResource, type SuppliersResourceOptions, type TestOrderStatus, TestOrdersResource, type TrendyolCargoProvider, type TrendyolClient, type TrendyolEnvironment, type UnapprovedDateQueryType, type UnapprovedProduct, type UnapprovedProductRejectReason, type UnapprovedProductStatus, type UpdateBoxInfoInput, type UpdateContentInput, type UpdateDeliveryInfoInput, type UpdatePackageStatusInput, type UpdatePriceInventoryResponse, type UpdateUnapprovedInput, type UpdateVariantInput, type UploadInvoiceFileInput, type Webhook, type WebhookAuthenticationType, type WebhookEvent, type WebhookEventStatus, type WebhookInput, WebhooksResource, createTrendyolClient, normalizeShipmentPackage, parseWebhookEvent };
|
|
2541
|
+
export { type ApproveClaimLineItemsInput, type BarcodeCategoryLookup, type BatchAcceptedResponse, type BatchRequestItemResult, type BatchRequestResult, type BatchRequestStatus, type Brand, BrandsResource, type BuyboxInfo, type CancelPackageItemInput, type CareInstruction, type CargoInvoiceItem, CategoriesResource, type Category, type CategoryAttribute, type CategoryAttributeValue, type City, type Claim, type ClaimIssueReason, type ClaimItemAudit, type ClaimItemStatus, ClaimsResource, type CommonLabel, type CommonLabelEntry, type CompensationItemDetail, type CompensationTicket, type CompensationTicketState, type Country, type CreateClaimInput, type CreateClaimIssueInput, type CreateClaimItemInput, type CreateClientOptions, type CreateCommonLabelInput, type CreateProductV2Input, type CreateTestOrderInput, type CreateVideoInput, type DeleteInvoiceLinkInput, type DeliveryOptionInput, type District, type ExportBatchAcceptedResponse, type ExportBatchStatus, type ExportCategoryAttribute, ExportCenterResource, type ExportPackage, type ExportPackageItem, type ExportPackageStatus, type ExportPriceUpdateInput, type ExportProduct, type ExportProductInput, type ExportStockUpdateInput, FinanceResource, type FinancialTransaction, type GetExportPackageItemsParams, InventoryResource, InvoicesResource, LabelsResource, type LaborCostInput, type ListCategoryAttributeValuesParams, type ListClaimsParams, type ListCompensationTicketsParams, type ListExportPackagesV2Params, type ListExportPackagesV3Params, type ListExportProductsParams, type ListFinanceParams, type ListOrdersParams, type ListOrdersStreamParams, type ListProductsParams, type ListQuestionsParams, type ListUnapprovedProductsParams, type ListVideosParams, LocationsResource, type NamedRef, type Neighborhood, type OrderAddress, type OrderAddressLines, type OrderCustomer, type OrderLine, type OrderLineDiscountDetail, OrdersResource, type OtherFinancialRow, type PackageCreatedBy, type PackageDetail, type PackageHistoryEntry, type PackageLineUpdate, type PriceInventoryUpdate, type ProcessAlternativeDeliveryInput, type Product, type ProductAttribute, type ProductAttributeV2Input, type ProductBase, type ProductComposition, type ProductImageInput, type ProductOrigin, type ProductVariant, ProductsResource, type QuantitySplit, type Question, type QuestionAnswer, type QuestionStatus, QuestionsResource, type SellerIntegrationStatus, type SellerVideo, type SendInvoiceLinkInput, type SettlementRow, type ShipmentPackage, type ShipmentPackageStatus, type SplitGroup, type SplitPackagePlan, type SupplierAddress, type SupplierAddressType, SuppliersResource, type SuppliersResourceOptions, type TestOrderStatus, TestOrdersResource, type TrendyolCargoProvider, type TrendyolClient, type TrendyolEnvironment, type UnapprovedDateQueryType, type UnapprovedProduct, type UnapprovedProductRejectReason, type UnapprovedProductStatus, type UpdateBoxInfoInput, type UpdateContentInput, type UpdateDeliveryInfoInput, type UpdatePackageStatusInput, type UpdatePriceInventoryResponse, type UpdateUnapprovedInput, type UpdateVariantInput, type UploadInvoiceFileInput, VideosResource, type Webhook, type WebhookAuthenticationType, type WebhookEvent, type WebhookEventStatus, type WebhookInput, WebhooksResource, createTrendyolClient, normalizeShipmentPackage, parseWebhookEvent };
|