openapi: 3.2.0 info: title: Monocrawl Ali Express API version: 0.1.0 description: One key, one envelope, one credit meter across social, search, commerce and web data. contact: name: Monocrawl support url: https://www.monocrawl.com/contact termsOfService: https://www.monocrawl.com/legal/terms-and-conditions servers: - url: https://www.monocrawl.com security: - ApiKeyHeader: [] tags: - name: AliExpress paths: /v1/aliexpress/categories: get: operationId: aliexpress_categories tags: - AliExpress summary: AliExpress categories description: AliExpress's top-level categories with their children and ids for aliexpress/search. Costs 1 credit per successful live response. parameters: - name: language in: query required: false schema: type: string example: en_US description: Locale - name: dry_run in: query required: false schema: type: string enum: - '1' - '0' - 'true' - 'false' example: '1' description: 'Read a zero-credit estimate without fetching sources, running AI, or reserving credits. Cache status is a snapshot, not a guarantee at execution. Accepted values: 1, 0, true, false. Case, spaces, hyphens and underscores are interchangeable.' - name: X-Max-Credits in: header required: false schema: type: integer minimum: 0 maximum: 9007199254740991 example: 5 description: Optional credit reservation ceiling for this individual request. Send a non-negative integer in decimal digits. Live execution checks the required reservation after resolving free cache hits or buffered continuation, before charging or calling a supplier. A higher reservation returns HTTP 422 INVALID_PARAMETERS with reason max_credits_exceeded and charges nothing. Invalid header values also return 422. Zero permits only a zero-credit reservation; omitting the header uses normal pricing. dry_run remains a free preview. This does not cap later requests, batches or scheduled runs. security: - ApiKeyHeader: [] - BearerKey: [] responses: '200': description: 'The common success envelope; `data` is endpoint-specific. Many lists use items/count/cursor; bundles use named collections and their documented continuation metadata. HTTP 200 can contain a partial bundle: inspect complete, partial and legs where supplied.' content: application/json: schema: allOf: - $ref: '#/components/schemas/Success' - type: object properties: data: $schema: https://json-schema.org/draft/2020-12/schema $id: https://www.monocrawl.com/schemas/aliexpress/categories.json title: aliexpress/categories data fields description: Optional data supplied by this operation. Null means unknown. type: object properties: count: description: Number of records in this response, not lifetime or total matches. type: - number - 'null' has_more: description: Source continuation indicator; null means unknown. type: - boolean - 'null' items: description: Returned records. Source coverage and completeness vary. type: - array items: description: Optional record supplied by this operation. Null means unknown. type: object properties: children: description: Optional children supplied by this operation. Null means unknown. type: - array - 'null' items: description: Optional record supplied by this operation. Null means unknown. type: - object - 'null' properties: {} additionalProperties: true id: description: Source identifier. Preserve the supplied type and exact value. type: - string - 'null' name: description: Optional name supplied by this operation. Null means unknown. type: - string - 'null' additionalProperties: true allOf: - anyOf: - required: - children properties: children: description: Optional children supplied by this operation. Null means unknown. type: - array items: description: Optional record supplied by this operation. Null means unknown. type: - object - 'null' properties: {} additionalProperties: true - required: - id properties: id: description: Source identifier. Preserve the supplied type and exact value. type: - string minLength: 1 - required: - name properties: name: description: Optional name supplied by this operation. Null means unknown. type: - string minLength: 1 additionalProperties: true required: - items x-contract-version: '2026-09-22' x-validation-scope: Required success payload structure; optional fields and source completeness remain separate. examples: - count: 0 has_more: false items: - children: - {} id: example name: example default: description: The error envelope — the same shape for every non-2xx status. content: application/json: schema: $ref: '#/components/schemas/Error' x-credits: 1 x-production-available: true x-capacity: status: not_assessed message: Capacity is workload-dependent; configured routes do not establish sustained throughput or an availability guarantee. x-availability-scope: Structural check of the effective registered chain, production permission, adapter, configured cost and quality floor without request parameters. True is not a live-health, credential, quota, subscription-entitlement, complete-data or deployment-exposure guarantee. False means no structurally eligible candidate; null means metadata could not establish availability. Composite child capability still depends on its component routes. x-live-proven: true /v1/aliexpress/description: get: operationId: aliexpress_description tags: - AliExpress summary: AliExpress product description description: The full description text and images of an AliExpress product, with its property list. Costs 1 credit per successful live response. parameters: - name: id in: query required: true schema: type: string example: '1005005244562338' description: AliExpress item id - name: language in: query required: false schema: type: string example: en_US description: Locale - name: dry_run in: query required: false schema: type: string enum: - '1' - '0' - 'true' - 'false' example: '1' description: 'Read a zero-credit estimate without fetching sources, running AI, or reserving credits. Cache status is a snapshot, not a guarantee at execution. Accepted values: 1, 0, true, false. Case, spaces, hyphens and underscores are interchangeable.' - name: X-Max-Credits in: header required: false schema: type: integer minimum: 0 maximum: 9007199254740991 example: 5 description: Optional credit reservation ceiling for this individual request. Send a non-negative integer in decimal digits. Live execution checks the required reservation after resolving free cache hits or buffered continuation, before charging or calling a supplier. A higher reservation returns HTTP 422 INVALID_PARAMETERS with reason max_credits_exceeded and charges nothing. Invalid header values also return 422. Zero permits only a zero-credit reservation; omitting the header uses normal pricing. dry_run remains a free preview. This does not cap later requests, batches or scheduled runs. security: - ApiKeyHeader: [] - BearerKey: [] responses: '200': description: 'The common success envelope; `data` is endpoint-specific. Many lists use items/count/cursor; bundles use named collections and their documented continuation metadata. HTTP 200 can contain a partial bundle: inspect complete, partial and legs where supplied.' content: application/json: schema: allOf: - $ref: '#/components/schemas/Success' - type: object properties: data: $schema: https://json-schema.org/draft/2020-12/schema $id: https://www.monocrawl.com/schemas/aliexpress/description.json title: aliexpress/description data fields description: Optional data supplied by this operation. Null means unknown. type: object properties: description: description: Source description; null or absent means not supplied. type: - object - 'null' properties: images: description: Optional images supplied by this operation. Null means unknown. type: - array - 'null' items: description: Optional record supplied by this operation. Null means unknown. type: - string - 'null' text: description: Source text when supplied. type: - string - 'null' additionalProperties: true id: description: Source identifier. Preserve the supplied type and exact value. type: - string - 'null' platform: description: Optional platform supplied by this operation. Null means unknown. type: - string - 'null' properties: description: Optional properties supplied by this operation. Null means unknown. type: - array - 'null' items: description: Optional record supplied by this operation. Null means unknown. type: - object - 'null' properties: name: description: Optional name supplied by this operation. Null means unknown. type: - string - 'null' value: description: Optional value supplied by this operation. Null means unknown. type: - string - 'null' additionalProperties: true additionalProperties: true allOf: - anyOf: - required: - description properties: description: description: Source description; null or absent means not supplied. type: - object properties: images: description: Optional images supplied by this operation. Null means unknown. type: - array - 'null' items: description: Optional record supplied by this operation. Null means unknown. type: - string - 'null' text: description: Source text when supplied. type: - string - 'null' additionalProperties: true - required: - id properties: id: description: Source identifier. Preserve the supplied type and exact value. type: - string minLength: 1 - required: - properties properties: properties: description: Optional properties supplied by this operation. Null means unknown. type: - array items: description: Optional record supplied by this operation. Null means unknown. type: - object - 'null' properties: name: description: Optional name supplied by this operation. Null means unknown. type: - string - 'null' value: description: Optional value supplied by this operation. Null means unknown. type: - string - 'null' additionalProperties: true x-contract-version: '2026-09-22' x-validation-scope: Required success payload structure; optional fields and source completeness remain separate. examples: - description: images: - example text: example id: example platform: example properties: - name: example value: example default: description: The error envelope — the same shape for every non-2xx status. content: application/json: schema: $ref: '#/components/schemas/Error' x-credits: 1 x-production-available: true x-capacity: status: not_assessed message: Capacity is workload-dependent; configured routes do not establish sustained throughput or an availability guarantee. x-availability-scope: Structural check of the effective registered chain, production permission, adapter, configured cost and quality floor without request parameters. True is not a live-health, credential, quota, subscription-entitlement, complete-data or deployment-exposure guarantee. False means no structurally eligible candidate; null means metadata could not establish availability. Composite child capability still depends on its component routes. x-live-proven: true /v1/aliexpress/product: get: operationId: aliexpress_product tags: - AliExpress summary: AliExpress product description: 'One AliExpress product: title, price range and promotion, rating, sales, images and video, properties, description, variants and options, shipping options and the seller. Costs 3 credits per successful live response.' parameters: - name: id in: query required: true schema: type: string example: '1005005244562338' description: AliExpress item id (the number in its URL), or the URL - name: region in: query required: false schema: type: string example: US description: Storefront country - name: currency in: query required: false schema: type: string example: USD description: Currency code - name: language in: query required: false schema: type: string example: en_US description: Locale - name: dry_run in: query required: false schema: type: string enum: - '1' - '0' - 'true' - 'false' example: '1' description: 'Read a zero-credit estimate without fetching sources, running AI, or reserving credits. Cache status is a snapshot, not a guarantee at execution. Accepted values: 1, 0, true, false. Case, spaces, hyphens and underscores are interchangeable.' - name: X-Max-Credits in: header required: false schema: type: integer minimum: 0 maximum: 9007199254740991 example: 5 description: Optional credit reservation ceiling for this individual request. Send a non-negative integer in decimal digits. Live execution checks the required reservation after resolving free cache hits or buffered continuation, before charging or calling a supplier. A higher reservation returns HTTP 422 INVALID_PARAMETERS with reason max_credits_exceeded and charges nothing. Invalid header values also return 422. Zero permits only a zero-credit reservation; omitting the header uses normal pricing. dry_run remains a free preview. This does not cap later requests, batches or scheduled runs. security: - ApiKeyHeader: [] - BearerKey: [] responses: '200': description: 'The common success envelope; `data` is endpoint-specific. Many lists use items/count/cursor; bundles use named collections and their documented continuation metadata. HTTP 200 can contain a partial bundle: inspect complete, partial and legs where supplied.' content: application/json: schema: allOf: - $ref: '#/components/schemas/Success' - type: object properties: data: $schema: https://json-schema.org/draft/2020-12/schema $id: https://www.monocrawl.com/schemas/aliexpress/product.json title: aliexpress/product data fields description: Optional data supplied by this operation. Null means unknown. type: object properties: available: description: Optional available supplied by this operation. Null means unknown. type: - boolean - 'null' breadcrumbs: description: Source array was empty in the reviewed captures; item fields remain unspecified. type: - array - 'null' items: {} category_id: description: Optional category id supplied by this operation. Null means unknown. type: - string - 'null' currency: description: Optional currency supplied by this operation. Null means unknown. type: - string - 'null' description: description: Source description; null or absent means not supplied. type: - object - 'null' properties: images: description: Optional images supplied by this operation. Null means unknown. type: - array - 'null' items: description: Optional record supplied by this operation. Null means unknown. type: - string - 'null' additionalProperties: true id: description: Source identifier. Preserve the supplied type and exact value. type: - string - 'null' image: description: Optional image supplied by this operation. Null means unknown. type: - string - 'null' images: description: Optional images supplied by this operation. Null means unknown. type: - array - 'null' items: description: Optional record supplied by this operation. Null means unknown. type: - string - 'null' options: description: Optional options supplied by this operation. Null means unknown. type: - array - 'null' items: description: Optional record supplied by this operation. Null means unknown. type: - object - 'null' properties: id: description: Source identifier. Preserve the supplied type and exact value. type: - string - 'null' name: description: Optional name supplied by this operation. Null means unknown. type: - string - 'null' values: description: Optional values supplied by this operation. Null means unknown. type: - array - 'null' items: description: Optional record supplied by this operation. Null means unknown. type: - object - 'null' properties: {} additionalProperties: true additionalProperties: true platform: description: Optional platform supplied by this operation. Null means unknown. type: - string - 'null' price_range: description: Optional price range supplied by this operation. Null means unknown. type: - object - 'null' properties: max: description: Optional max supplied by this operation. Null means unknown. type: - number - 'null' min: description: Optional min supplied by this operation. Null means unknown. type: - number - 'null' additionalProperties: true promotion_price: description: Optional promotion price supplied by this operation. Null means unknown. type: - object - 'null' properties: max: description: Optional max supplied by this operation. Null means unknown. type: - number - 'null' min: description: Optional min supplied by this operation. Null means unknown. type: - number - 'null' additionalProperties: true properties: description: Optional properties supplied by this operation. Null means unknown. type: - array - 'null' items: description: Optional record supplied by this operation. Null means unknown. type: - object - 'null' properties: name: description: Optional name supplied by this operation. Null means unknown. type: - string - 'null' value: description: Optional value supplied by this operation. Null means unknown. type: - string - 'null' additionalProperties: true quantity: description: Optional quantity supplied by this operation. Null means unknown. type: - number - 'null' rating: description: Source rating; read its accompanying scale and vote count. type: - object - 'null' properties: max: description: Optional max supplied by this operation. Null means unknown. type: - number - 'null' value: description: Optional value supplied by this operation. Null means unknown. type: - number - 'null' votes: description: Optional votes supplied by this operation. Null means unknown. type: - number - 'null' additionalProperties: true reviews_count: description: Optional reviews count supplied by this operation. Null means unknown. type: - number - 'null' seller: description: Optional seller supplied by this operation. Null means unknown. type: - object - 'null' properties: company_id: description: Optional company id supplied by this operation. Null means unknown. type: - string - 'null' id: description: Source identifier. Preserve the supplied type and exact value. type: - string - 'null' name: description: Optional name supplied by this operation. Null means unknown. type: - string - 'null' store_id: description: Optional store id supplied by this operation. Null means unknown. type: - string - 'null' url: description: Original source URL when supplied. type: - string - 'null' additionalProperties: true shipping: description: Optional shipping supplied by this operation. Null means unknown. type: - object - 'null' properties: days_to_ship: description: Optional days to ship supplied by this operation. Null means unknown. type: - number - 'null' options: description: Source array was empty in the reviewed captures; item fields remain unspecified. type: - array - 'null' items: {} package: description: Optional package supplied by this operation. Null means unknown. type: - object - 'null' properties: height: description: Optional height supplied by this operation. Null means unknown. type: - number - 'null' length: description: Optional length supplied by this operation. Null means unknown. type: - number - 'null' weight: description: Optional weight supplied by this operation. Null means unknown. type: - number - 'null' width: description: Optional width supplied by this operation. Null means unknown. type: - number - 'null' additionalProperties: true to: description: Optional to supplied by this operation. Null means unknown. type: - string - 'null' additionalProperties: true title: description: Source title when supplied. type: - string - 'null' type: description: Optional type supplied by this operation. Null means unknown. type: - string - 'null' url: description: Original source URL when supplied. type: - string - 'null' variants: description: Optional variants supplied by this operation. Null means unknown. type: - array - 'null' items: description: Optional record supplied by this operation. Null means unknown. type: - object - 'null' properties: attributes: description: Optional attributes supplied by this operation. Null means unknown. type: - string - 'null' ext: description: Optional ext supplied by this operation. Null means unknown. type: - string - 'null' id: description: Source identifier. Preserve the supplied type and exact value. type: - string - 'null' price: description: Source price. Currency, taxes and availability depend on the listing. type: - number - 'null' promotion_price: description: Optional promotion price supplied by this operation. Null means unknown. type: - number - 'null' quantity: description: Optional quantity supplied by this operation. Null means unknown. type: - number - 'null' additionalProperties: true additionalProperties: true allOf: - anyOf: - required: - available properties: available: description: Optional available supplied by this operation. Null means unknown. type: - boolean - required: - breadcrumbs properties: breadcrumbs: description: Source array was empty in the reviewed captures; item fields remain unspecified. type: - array items: {} - required: - category_id properties: category_id: description: Optional category id supplied by this operation. Null means unknown. type: - string minLength: 1 - required: - currency properties: currency: description: Optional currency supplied by this operation. Null means unknown. type: - string minLength: 1 - required: - description properties: description: description: Source description; null or absent means not supplied. type: - object properties: images: description: Optional images supplied by this operation. Null means unknown. type: - array - 'null' items: description: Optional record supplied by this operation. Null means unknown. type: - string - 'null' additionalProperties: true - required: - id properties: id: description: Source identifier. Preserve the supplied type and exact value. type: - string minLength: 1 - required: - image properties: image: description: Optional image supplied by this operation. Null means unknown. type: - string minLength: 1 - required: - images properties: images: description: Optional images supplied by this operation. Null means unknown. type: - array items: description: Optional record supplied by this operation. Null means unknown. type: - string - 'null' - required: - options properties: options: description: Optional options supplied by this operation. Null means unknown. type: - array items: description: Optional record supplied by this operation. Null means unknown. type: - object - 'null' properties: id: description: Source identifier. Preserve the supplied type and exact value. type: - string - 'null' name: description: Optional name supplied by this operation. Null means unknown. type: - string - 'null' values: description: Optional values supplied by this operation. Null means unknown. type: - array - 'null' items: description: Optional record supplied by this operation. Null means unknown. type: - object - 'null' properties: {} additionalProperties: true additionalProperties: true - required: - price_range properties: price_range: description: Optional price range supplied by this operation. Null means unknown. type: - object properties: max: description: Optional max supplied by this operation. Null means unknown. type: - number - 'null' min: description: Optional min supplied by this operation. Null means unknown. type: - number - 'null' additionalProperties: true - required: - promotion_price properties: promotion_price: description: Optional promotion price supplied by this operation. Null means unknown. type: - object properties: max: description: Optional max supplied by this operation. Null means unknown. type: - number - 'null' min: description: Optional min supplied by this operation. Null means unknown. type: - number - 'null' additionalProperties: true - required: - properties properties: properties: description: Optional properties supplied by this operation. Null means unknown. type: - array items: description: Optional record supplied by this operation. Null means unknown. type: - object - 'null' properties: name: description: Optional name supplied by this operation. Null means unknown. type: - string - 'null' value: description: Optional value supplied by this operation. Null means unknown. type: - string - 'null' additionalProperties: true - required: - quantity properties: quantity: description: Optional quantity supplied by this operation. Null means unknown. type: - number - required: - rating properties: rating: description: Source rating; read its accompanying scale and vote count. type: - object properties: max: description: Optional max supplied by this operation. Null means unknown. type: - number - 'null' value: description: Optional value supplied by this operation. Null means unknown. type: - number - 'null' votes: description: Optional votes supplied by this operation. Null means unknown. type: - number - 'null' additionalProperties: true - required: - reviews_count properties: reviews_count: description: Optional reviews count supplied by this operation. Null means unknown. type: - number - required: - seller properties: seller: description: Optional seller supplied by this operation. Null means unknown. type: - object properties: company_id: description: Optional company id supplied by this operation. Null means unknown. type: - string - 'null' id: description: Source identifier. Preserve the supplied type and exact value. type: - string - 'null' name: description: Optional name supplied by this operation. Null means unknown. type: - string - 'null' store_id: description: Optional store id supplied by this operation. Null means unknown. type: - string - 'null' url: description: Original source URL when supplied. type: - string - 'null' additionalProperties: true - required: - shipping properties: shipping: description: Optional shipping supplied by this operation. Null means unknown. type: - object properties: days_to_ship: description: Optional days to ship supplied by this operation. Null means unknown. type: - number - 'null' options: description: Source array was empty in the reviewed captures; item fields remain unspecified. type: - array - 'null' items: {} package: description: Optional package supplied by this operation. Null means unknown. type: - object - 'null' properties: height: description: Optional height supplied by this operation. Null means unknown. type: - number - 'null' length: description: Optional length supplied by this operation. Null means unknown. type: - number - 'null' weight: description: Optional weight supplied by this operation. Null means unknown. type: - number - 'null' width: description: Optional width supplied by this operation. Null means unknown. type: - number - 'null' additionalProperties: true to: description: Optional to supplied by this operation. Null means unknown. type: - string - 'null' additionalProperties: true - required: - title properties: title: description: Source title when supplied. type: - string minLength: 1 - required: - url properties: url: description: Original source URL when supplied. type: - string minLength: 1 - required: - variants properties: variants: description: Optional variants supplied by this operation. Null means unknown. type: - array items: description: Optional record supplied by this operation. Null means unknown. type: - object - 'null' properties: attributes: description: Optional attributes supplied by this operation. Null means unknown. type: - string - 'null' ext: description: Optional ext supplied by this operation. Null means unknown. type: - string - 'null' id: description: Source identifier. Preserve the supplied type and exact value. type: - string - 'null' price: description: Source price. Currency, taxes and availability depend on the listing. type: - number - 'null' promotion_price: description: Optional promotion price supplied by this operation. Null means unknown. type: - number - 'null' quantity: description: Optional quantity supplied by this operation. Null means unknown. type: - number - 'null' additionalProperties: true x-contract-version: '2026-09-22' x-validation-scope: Required success payload structure; optional fields and source completeness remain separate. examples: - available: false breadcrumbs: [] category_id: example currency: example description: images: - example id: example image: https://example.com/example images: - example options: - id: example name: example values: - {} platform: example price_range: max: 0 min: 0 promotion_price: max: 0 min: 0 properties: - name: example value: example quantity: 0 rating: max: 0 value: 0 votes: 0 reviews_count: 0 seller: company_id: example id: example name: example store_id: example url: https://example.com/example shipping: days_to_ship: 0 options: [] package: height: 0 length: 0 weight: 0 width: 0 to: example title: example type: example url: https://example.com/example variants: - attributes: example ext: example id: example price: 0 promotion_price: 0 quantity: 0 default: description: The error envelope — the same shape for every non-2xx status. content: application/json: schema: $ref: '#/components/schemas/Error' x-credits: 3 x-production-available: true x-capacity: status: not_assessed message: Capacity is workload-dependent; configured routes do not establish sustained throughput or an availability guarantee. x-availability-scope: Structural check of the effective registered chain, production permission, adapter, configured cost and quality floor without request parameters. True is not a live-health, credential, quota, subscription-entitlement, complete-data or deployment-exposure guarantee. False means no structurally eligible candidate; null means metadata could not establish availability. Composite child capability still depends on its component routes. x-live-proven: true /v1/aliexpress/promos: get: operationId: aliexpress_promos tags: - AliExpress summary: AliExpress promotions description: The featured AliExpress promotions currently running, with the number of products in each; a name goes to aliexpress/search-promo. Costs 1 credit per successful live response. parameters: - name: dry_run in: query required: false schema: type: string enum: - '1' - '0' - 'true' - 'false' example: '1' description: 'Read a zero-credit estimate without fetching sources, running AI, or reserving credits. Cache status is a snapshot, not a guarantee at execution. Accepted values: 1, 0, true, false. Case, spaces, hyphens and underscores are interchangeable.' - name: X-Max-Credits in: header required: false schema: type: integer minimum: 0 maximum: 9007199254740991 example: 5 description: Optional credit reservation ceiling for this individual request. Send a non-negative integer in decimal digits. Live execution checks the required reservation after resolving free cache hits or buffered continuation, before charging or calling a supplier. A higher reservation returns HTTP 422 INVALID_PARAMETERS with reason max_credits_exceeded and charges nothing. Invalid header values also return 422. Zero permits only a zero-credit reservation; omitting the header uses normal pricing. dry_run remains a free preview. This does not cap later requests, batches or scheduled runs. security: - ApiKeyHeader: [] - BearerKey: [] responses: '200': description: 'The common success envelope; `data` is endpoint-specific. Many lists use items/count/cursor; bundles use named collections and their documented continuation metadata. HTTP 200 can contain a partial bundle: inspect complete, partial and legs where supplied.' content: application/json: schema: allOf: - $ref: '#/components/schemas/Success' - type: object properties: data: $schema: https://json-schema.org/draft/2020-12/schema $id: https://www.monocrawl.com/schemas/aliexpress/promos.json title: aliexpress/promos data fields description: Optional data supplied by this operation. Null means unknown. type: object properties: count: description: Number of records in this response, not lifetime or total matches. type: - number - 'null' has_more: description: Source continuation indicator; null means unknown. type: - boolean - 'null' items: description: Returned records. Source coverage and completeness vary. type: - array items: description: Optional record supplied by this operation. Null means unknown. type: object properties: description: description: Source description; null or absent means not supplied. type: - string - 'null' name: description: Optional name supplied by this operation. Null means unknown. type: - string - 'null' product_count: description: Optional product count supplied by this operation. Null means unknown. type: - number - 'null' additionalProperties: true allOf: - anyOf: - required: - description properties: description: description: Source description; null or absent means not supplied. type: - string minLength: 1 - required: - name properties: name: description: Optional name supplied by this operation. Null means unknown. type: - string minLength: 1 - required: - product_count properties: product_count: description: Optional product count supplied by this operation. Null means unknown. type: - number total: description: Source-reported total; null is unknown. type: - number - 'null' additionalProperties: true required: - items x-contract-version: '2026-09-22' x-validation-scope: Required success payload structure; optional fields and source completeness remain separate. examples: - count: 0 has_more: false items: - description: example name: example product_count: 0 total: 0 default: description: The error envelope — the same shape for every non-2xx status. content: application/json: schema: $ref: '#/components/schemas/Error' x-credits: 1 x-production-available: true x-capacity: status: not_assessed message: Capacity is workload-dependent; configured routes do not establish sustained throughput or an availability guarantee. x-availability-scope: Structural check of the effective registered chain, production permission, adapter, configured cost and quality floor without request parameters. True is not a live-health, credential, quota, subscription-entitlement, complete-data or deployment-exposure guarantee. False means no structurally eligible candidate; null means metadata could not establish availability. Composite child capability still depends on its component routes. x-live-proven: true /v1/aliexpress/reviews: get: operationId: aliexpress_reviews tags: - AliExpress summary: AliExpress product reviews description: Reviews of an AliExpress product, twenty per page, with the rating distribution and buyer country. Costs 3 credits per successful live response. parameters: - name: id in: query required: true schema: type: string example: '3256809769628322' description: AliExpress item id - name: page in: query required: false schema: type: string example: '1' description: Page number (20 per page) - name: filter in: query required: false schema: type: string x-values-from: data.filters example: allReviews description: A filter value from the response's filters list - name: sort in: query required: false schema: type: string x-values-from: data.sorts example: '' description: A sort value from the response - name: dry_run in: query required: false schema: type: string enum: - '1' - '0' - 'true' - 'false' example: '1' description: 'Read a zero-credit estimate without fetching sources, running AI, or reserving credits. Cache status is a snapshot, not a guarantee at execution. Accepted values: 1, 0, true, false. Case, spaces, hyphens and underscores are interchangeable.' - name: X-Max-Credits in: header required: false schema: type: integer minimum: 0 maximum: 9007199254740991 example: 5 description: Optional credit reservation ceiling for this individual request. Send a non-negative integer in decimal digits. Live execution checks the required reservation after resolving free cache hits or buffered continuation, before charging or calling a supplier. A higher reservation returns HTTP 422 INVALID_PARAMETERS with reason max_credits_exceeded and charges nothing. Invalid header values also return 422. Zero permits only a zero-credit reservation; omitting the header uses normal pricing. dry_run remains a free preview. This does not cap later requests, batches or scheduled runs. security: - ApiKeyHeader: [] - BearerKey: [] responses: '200': description: 'The common success envelope; `data` is endpoint-specific. Many lists use items/count/cursor; bundles use named collections and their documented continuation metadata. HTTP 200 can contain a partial bundle: inspect complete, partial and legs where supplied.' content: application/json: schema: allOf: - $ref: '#/components/schemas/Success' - type: object properties: data: $schema: https://json-schema.org/draft/2020-12/schema $id: https://www.monocrawl.com/schemas/aliexpress/reviews.json title: aliexpress/reviews data fields description: Optional data supplied by this operation. Null means unknown. type: object properties: count: description: Number of records in this response, not lifetime or total matches. type: - number - 'null' cursor: description: Opaque next-page token; pass it back unchanged. Null does not prove complete history. type: - string - 'null' filters: description: Optional filters supplied by this operation. Null means unknown. type: - array - 'null' items: description: Optional record supplied by this operation. Null means unknown. type: - string - 'null' has_more: description: Source continuation indicator; null means unknown. type: - boolean - 'null' items: description: Returned records. Source coverage and completeness vary. type: - array items: description: Optional record supplied by this operation. Null means unknown. type: object properties: anonymous: description: Optional anonymous supplied by this operation. Null means unknown. type: - boolean - 'null' author: description: Public author information supplied with this record. type: - object - 'null' properties: country: description: Optional country supplied by this operation. Null means unknown. type: - string - 'null' gender: description: Optional gender supplied by this operation. Null means unknown. type: - string - 'null' image: description: Optional image supplied by this operation. Null means unknown. type: - string - 'null' name: description: Optional name supplied by this operation. Null means unknown. type: - string - 'null' additionalProperties: true helpful: description: Optional helpful supplied by this operation. Null means unknown. type: - number - 'null' id: description: Source identifier. Preserve the supplied type and exact value. type: - string - 'null' images: description: Optional images supplied by this operation. Null means unknown. type: - array - 'null' items: description: Optional record supplied by this operation. Null means unknown. type: - string - 'null' language: description: Optional language supplied by this operation. Null means unknown. type: - string - 'null' logistics: description: Optional logistics supplied by this operation. Null means unknown. type: - string - 'null' platform: description: Optional platform supplied by this operation. Null means unknown. type: - string - 'null' posted_at: description: Optional posted at supplied by this operation. Null means unknown. type: - string - 'null' rating: description: Source rating; read its accompanying scale and vote count. type: - number - 'null' text: description: Source text when supplied. type: - string - 'null' translated_text: description: Optional translated text supplied by this operation. Null means unknown. type: - string - 'null' unhelpful: description: Optional unhelpful supplied by this operation. Null means unknown. type: - number - 'null' variant: description: Optional variant supplied by this operation. Null means unknown. type: - string - 'null' additionalProperties: true allOf: - anyOf: - required: - anonymous properties: anonymous: description: Optional anonymous supplied by this operation. Null means unknown. type: - boolean - required: - author properties: author: description: Public author information supplied with this record. type: - object properties: country: description: Optional country supplied by this operation. Null means unknown. type: - string - 'null' gender: description: Optional gender supplied by this operation. Null means unknown. type: - string - 'null' image: description: Optional image supplied by this operation. Null means unknown. type: - string - 'null' name: description: Optional name supplied by this operation. Null means unknown. type: - string - 'null' additionalProperties: true - required: - helpful properties: helpful: description: Optional helpful supplied by this operation. Null means unknown. type: - number - required: - id properties: id: description: Source identifier. Preserve the supplied type and exact value. type: - string minLength: 1 - required: - images properties: images: description: Optional images supplied by this operation. Null means unknown. type: - array items: description: Optional record supplied by this operation. Null means unknown. type: - string - 'null' - required: - language properties: language: description: Optional language supplied by this operation. Null means unknown. type: - string minLength: 1 - required: - logistics properties: logistics: description: Optional logistics supplied by this operation. Null means unknown. type: - string minLength: 1 - required: - posted_at properties: posted_at: description: Optional posted at supplied by this operation. Null means unknown. type: - string minLength: 1 - required: - rating properties: rating: description: Source rating; read its accompanying scale and vote count. type: - number - required: - text properties: text: description: Source text when supplied. type: - string minLength: 1 - required: - translated_text properties: translated_text: description: Optional translated text supplied by this operation. Null means unknown. type: - string minLength: 1 - required: - unhelpful properties: unhelpful: description: Optional unhelpful supplied by this operation. Null means unknown. type: - number - required: - variant properties: variant: description: Optional variant supplied by this operation. Null means unknown. type: - string minLength: 1 page: description: Optional page supplied by this operation. Null means unknown. type: - number - 'null' positive_rate: description: Optional positive rate supplied by this operation. Null means unknown. type: - number - 'null' product_id: description: Optional product id supplied by this operation. Null means unknown. type: - string - 'null' rating: description: Source rating; read its accompanying scale and vote count. type: - object - 'null' properties: max: description: Optional max supplied by this operation. Null means unknown. type: - number - 'null' value: description: Optional value supplied by this operation. Null means unknown. type: - number - 'null' votes: description: Optional votes supplied by this operation. Null means unknown. type: - number - 'null' additionalProperties: true rating_distribution: description: Optional rating distribution supplied by this operation. Null means unknown. type: - object - 'null' properties: {} additionalProperties: true total: description: Source-reported total; null is unknown. type: - number - 'null' total_pages: description: Optional total pages supplied by this operation. Null means unknown. type: - number - 'null' additionalProperties: true required: - items x-contract-version: '2026-09-22' x-validation-scope: Required success payload structure; optional fields and source completeness remain separate. examples: - count: 0 cursor: null filters: - example has_more: false items: - anonymous: false author: country: example gender: example image: https://example.com/example name: example helpful: 0 id: example images: - example language: example logistics: example platform: example posted_at: '2026-09-01T12:00:00Z' rating: 0 text: example translated_text: example unhelpful: 0 variant: example page: 0 positive_rate: 0 product_id: example rating: max: 0 value: 0 votes: 0 rating_distribution: {} total: 0 total_pages: 0 default: description: The error envelope — the same shape for every non-2xx status. content: application/json: schema: $ref: '#/components/schemas/Error' x-credits: 3 x-production-available: true x-capacity: status: not_assessed message: Capacity is workload-dependent; configured routes do not establish sustained throughput or an availability guarantee. x-availability-scope: Structural check of the effective registered chain, production permission, adapter, configured cost and quality floor without request parameters. True is not a live-health, credential, quota, subscription-entitlement, complete-data or deployment-exposure guarantee. False means no structurally eligible candidate; null means metadata could not establish availability. Composite child capability still depends on its component routes. x-live-proven: true /v1/aliexpress/search: get: operationId: aliexpress_search tags: - AliExpress summary: AliExpress product search description: Products matching a keyword, twenty per page, with price, promotion price, sales, rating and shipping. Costs 3 credits per successful live response. parameters: - name: query in: query required: true schema: type: string example: iphone description: Search keyword - name: page in: query required: false schema: type: string example: '1' description: Page number (20 per page) - name: sort in: query required: false schema: type: string x-values-from: data.sorts example: default description: A sort value from the response's sorts list - name: category_id in: query required: false schema: type: string example: '' description: Category id from aliexpress/categories - name: min_price in: query required: false schema: type: string example: '' description: Minimum price - name: max_price in: query required: false schema: type: string example: '' description: Maximum price - name: ship_from in: query required: false schema: type: string example: '' description: Ship-from country code - name: region in: query required: false schema: type: string example: US description: Storefront country - name: currency in: query required: false schema: type: string example: USD description: Currency code - name: language in: query required: false schema: type: string example: en_US description: Locale - name: dry_run in: query required: false schema: type: string enum: - '1' - '0' - 'true' - 'false' example: '1' description: 'Read a zero-credit estimate without fetching sources, running AI, or reserving credits. Cache status is a snapshot, not a guarantee at execution. Accepted values: 1, 0, true, false. Case, spaces, hyphens and underscores are interchangeable.' - name: X-Max-Credits in: header required: false schema: type: integer minimum: 0 maximum: 9007199254740991 example: 5 description: Optional credit reservation ceiling for this individual request. Send a non-negative integer in decimal digits. Live execution checks the required reservation after resolving free cache hits or buffered continuation, before charging or calling a supplier. A higher reservation returns HTTP 422 INVALID_PARAMETERS with reason max_credits_exceeded and charges nothing. Invalid header values also return 422. Zero permits only a zero-credit reservation; omitting the header uses normal pricing. dry_run remains a free preview. This does not cap later requests, batches or scheduled runs. security: - ApiKeyHeader: [] - BearerKey: [] responses: '200': description: 'The common success envelope; `data` is endpoint-specific. Many lists use items/count/cursor; bundles use named collections and their documented continuation metadata. HTTP 200 can contain a partial bundle: inspect complete, partial and legs where supplied.' content: application/json: schema: allOf: - $ref: '#/components/schemas/Success' - type: object properties: data: $schema: https://json-schema.org/draft/2020-12/schema $id: https://www.monocrawl.com/schemas/aliexpress/search.json title: aliexpress/search data fields description: Optional data supplied by this operation. Null means unknown. type: object properties: count: description: Number of records in this response, not lifetime or total matches. type: - number - 'null' currency: description: Optional currency supplied by this operation. Null means unknown. type: - string - 'null' cursor: description: Opaque next-page token; pass it back unchanged. Null does not prove complete history. type: - string - 'null' has_more: description: Source continuation indicator; null means unknown. type: - boolean - 'null' items: description: Returned records. Source coverage and completeness vary. type: - array items: description: Optional record supplied by this operation. Null means unknown. type: object properties: id: description: Source identifier. Preserve the supplied type and exact value. type: - string - 'null' image: description: Optional image supplied by this operation. Null means unknown. type: - string - 'null' listing_type: description: Optional listing type supplied by this operation. Null means unknown. type: - string - 'null' platform: description: Optional platform supplied by this operation. Null means unknown. type: - string - 'null' price: description: Source price. Currency, taxes and availability depend on the listing. type: - number - 'null' promotion_price: description: Optional promotion price supplied by this operation. Null means unknown. type: - object - 'null' properties: max: description: Optional max supplied by this operation. Null means unknown. type: - number - 'null' min: description: Optional min supplied by this operation. Null means unknown. type: - number - 'null' additionalProperties: true rating: description: Source rating; read its accompanying scale and vote count. type: - object - 'null' properties: max: description: Optional max supplied by this operation. Null means unknown. type: - number - 'null' value: description: Optional value supplied by this operation. Null means unknown. type: - number - 'null' additionalProperties: true sales: description: Optional sales supplied by this operation. Null means unknown. type: - number - 'null' sales_label: description: Optional sales label supplied by this operation. Null means unknown. type: - string - 'null' selling_points: description: Source array was empty in the reviewed captures; item fields remain unspecified. type: - array - 'null' items: {} title: description: Source title when supplied. type: - string - 'null' type: description: Optional type supplied by this operation. Null means unknown. type: - string - 'null' url: description: Original source URL when supplied. type: - string - 'null' additionalProperties: true allOf: - anyOf: - required: - id properties: id: description: Source identifier. Preserve the supplied type and exact value. type: - string minLength: 1 - required: - image properties: image: description: Optional image supplied by this operation. Null means unknown. type: - string minLength: 1 - required: - listing_type properties: listing_type: description: Optional listing type supplied by this operation. Null means unknown. type: - string minLength: 1 - required: - price properties: price: description: Source price. Currency, taxes and availability depend on the listing. type: - number - required: - promotion_price properties: promotion_price: description: Optional promotion price supplied by this operation. Null means unknown. type: - object properties: max: description: Optional max supplied by this operation. Null means unknown. type: - number - 'null' min: description: Optional min supplied by this operation. Null means unknown. type: - number - 'null' additionalProperties: true - required: - rating properties: rating: description: Source rating; read its accompanying scale and vote count. type: - object properties: max: description: Optional max supplied by this operation. Null means unknown. type: - number - 'null' value: description: Optional value supplied by this operation. Null means unknown. type: - number - 'null' additionalProperties: true - required: - sales properties: sales: description: Optional sales supplied by this operation. Null means unknown. type: - number - required: - sales_label properties: sales_label: description: Optional sales label supplied by this operation. Null means unknown. type: - string minLength: 1 - required: - selling_points properties: selling_points: description: Source array was empty in the reviewed captures; item fields remain unspecified. type: - array items: {} - required: - title properties: title: description: Source title when supplied. type: - string minLength: 1 - required: - url properties: url: description: Original source URL when supplied. type: - string minLength: 1 page: description: Optional page supplied by this operation. Null means unknown. type: - number - 'null' query: description: Optional query supplied by this operation. Null means unknown. type: - string - 'null' region: description: Optional region supplied by this operation. Null means unknown. type: - string - 'null' sorts: description: Optional sorts supplied by this operation. Null means unknown. type: - array - 'null' items: description: Optional record supplied by this operation. Null means unknown. type: - string - 'null' total: description: Source-reported total; null is unknown. type: - number - 'null' additionalProperties: true required: - items x-contract-version: '2026-09-22' x-validation-scope: Required success payload structure; optional fields and source completeness remain separate. examples: - count: 0 currency: example cursor: null has_more: false items: - id: example image: https://example.com/example listing_type: example platform: example price: 0 promotion_price: max: 0 min: 0 rating: max: 0 value: 0 sales: 0 sales_label: example selling_points: [] title: example type: example url: https://example.com/example page: 0 query: example region: example sorts: - example total: 0 default: description: The error envelope — the same shape for every non-2xx status. content: application/json: schema: $ref: '#/components/schemas/Error' x-credits: 3 x-production-available: true x-capacity: status: not_assessed message: Capacity is workload-dependent; configured routes do not establish sustained throughput or an availability guarantee. x-availability-scope: Structural check of the effective registered chain, production permission, adapter, configured cost and quality floor without request parameters. True is not a live-health, credential, quota, subscription-entitlement, complete-data or deployment-exposure guarantee. False means no structurally eligible candidate; null means metadata could not establish availability. Composite child capability still depends on its component routes. x-live-proven: true /v1/aliexpress/search-hot: get: operationId: aliexpress_search_hot tags: - AliExpress summary: AliExpress hot products description: Currently hot AliExpress products, optionally filtered by keyword or category, with prices, discount, sales volume and shop. Costs 3 credits per successful live response. parameters: - name: query in: query required: false schema: type: string example: xiaomi description: Keyword filter - name: category_id in: query required: false schema: type: string example: '' description: Category id filter - name: sort_by in: query required: false schema: type: string enum: - price_asc - price_desc - volume - sales - discount - newest example: volume description: 'price_asc, price_desc, volume or discount Accepted values: price_asc, price_desc, volume, sales, discount, newest. Case, spaces, hyphens and underscores are interchangeable.' - name: page in: query required: false schema: type: string example: '1' description: Page number - name: limit in: query required: false schema: type: string example: '10' description: Products per page, up to 50 - name: country in: query required: false schema: type: string example: US description: Ship-to country - name: currency in: query required: false schema: type: string example: USD description: Price currency - name: dry_run in: query required: false schema: type: string enum: - '1' - '0' - 'true' - 'false' example: '1' description: 'Read a zero-credit estimate without fetching sources, running AI, or reserving credits. Cache status is a snapshot, not a guarantee at execution. Accepted values: 1, 0, true, false. Case, spaces, hyphens and underscores are interchangeable.' - name: X-Max-Credits in: header required: false schema: type: integer minimum: 0 maximum: 9007199254740991 example: 5 description: Optional credit reservation ceiling for this individual request. Send a non-negative integer in decimal digits. Live execution checks the required reservation after resolving free cache hits or buffered continuation, before charging or calling a supplier. A higher reservation returns HTTP 422 INVALID_PARAMETERS with reason max_credits_exceeded and charges nothing. Invalid header values also return 422. Zero permits only a zero-credit reservation; omitting the header uses normal pricing. dry_run remains a free preview. This does not cap later requests, batches or scheduled runs. security: - ApiKeyHeader: [] - BearerKey: [] responses: '200': description: 'The common success envelope; `data` is endpoint-specific. Many lists use items/count/cursor; bundles use named collections and their documented continuation metadata. HTTP 200 can contain a partial bundle: inspect complete, partial and legs where supplied.' content: application/json: schema: allOf: - $ref: '#/components/schemas/Success' - type: object properties: data: $schema: https://json-schema.org/draft/2020-12/schema $id: https://www.monocrawl.com/schemas/aliexpress/search-hot.json title: aliexpress/search-hot data fields description: Optional data supplied by this operation. Null means unknown. type: object properties: count: description: Number of records in this response, not lifetime or total matches. type: - number - 'null' cursor: description: Opaque next-page token; pass it back unchanged. Null does not prove complete history. type: - string - 'null' has_more: description: Source continuation indicator; null means unknown. type: - boolean - 'null' items: description: Returned records. Source coverage and completeness vary. type: - array items: description: Optional record supplied by this operation. Null means unknown. type: object properties: category: description: Optional category supplied by this operation. Null means unknown. type: - object - 'null' properties: id: description: Source identifier. Preserve the supplied type and exact value. type: - string - 'null' name: description: Optional name supplied by this operation. Null means unknown. type: - string - 'null' parent: description: Optional parent supplied by this operation. Null means unknown. type: - string - 'null' additionalProperties: true currency: description: Optional currency supplied by this operation. Null means unknown. type: - string - 'null' discount: description: Optional discount supplied by this operation. Null means unknown. type: - string - 'null' id: description: Source identifier. Preserve the supplied type and exact value. type: - string - 'null' image: description: Optional image supplied by this operation. Null means unknown. type: - string - 'null' images: description: Optional images supplied by this operation. Null means unknown. type: - array - 'null' items: description: Optional record supplied by this operation. Null means unknown. type: - string - 'null' original_price: description: Optional original price supplied by this operation. Null means unknown. type: - number - 'null' platform: description: Optional platform supplied by this operation. Null means unknown. type: - string - 'null' price: description: Source price. Currency, taxes and availability depend on the listing. type: - number - 'null' promotion_price: description: Optional promotion price supplied by this operation. Null means unknown. type: - number - 'null' rating: description: Source rating; read its accompanying scale and vote count. type: - object - 'null' properties: max: description: Optional max supplied by this operation. Null means unknown. type: - number - 'null' value: description: Optional value supplied by this operation. Null means unknown. type: - number - 'null' additionalProperties: true sales: description: Optional sales supplied by this operation. Null means unknown. type: - number - 'null' sales_label: description: Optional sales label supplied by this operation. Null means unknown. type: - string - 'null' selling_points: description: Source array was empty in the reviewed captures; item fields remain unspecified. type: - array - 'null' items: {} shop: description: Optional shop supplied by this operation. Null means unknown. type: - object - 'null' properties: id: description: Source identifier. Preserve the supplied type and exact value. type: - string - 'null' name: description: Optional name supplied by this operation. Null means unknown. type: - string - 'null' url: description: Original source URL when supplied. type: - string - 'null' additionalProperties: true sku_id: description: Optional sku id supplied by this operation. Null means unknown. type: - string - 'null' title: description: Source title when supplied. type: - string - 'null' type: description: Optional type supplied by this operation. Null means unknown. type: - string - 'null' url: description: Original source URL when supplied. type: - string - 'null' video_url: description: Optional video url supplied by this operation. Null means unknown. type: - string - 'null' additionalProperties: true allOf: - anyOf: - required: - category properties: category: description: Optional category supplied by this operation. Null means unknown. type: - object properties: id: description: Source identifier. Preserve the supplied type and exact value. type: - string - 'null' name: description: Optional name supplied by this operation. Null means unknown. type: - string - 'null' parent: description: Optional parent supplied by this operation. Null means unknown. type: - string - 'null' additionalProperties: true - required: - currency properties: currency: description: Optional currency supplied by this operation. Null means unknown. type: - string minLength: 1 - required: - discount properties: discount: description: Optional discount supplied by this operation. Null means unknown. type: - string minLength: 1 - required: - id properties: id: description: Source identifier. Preserve the supplied type and exact value. type: - string minLength: 1 - required: - image properties: image: description: Optional image supplied by this operation. Null means unknown. type: - string minLength: 1 - required: - images properties: images: description: Optional images supplied by this operation. Null means unknown. type: - array items: description: Optional record supplied by this operation. Null means unknown. type: - string - 'null' - required: - original_price properties: original_price: description: Optional original price supplied by this operation. Null means unknown. type: - number - required: - price properties: price: description: Source price. Currency, taxes and availability depend on the listing. type: - number - required: - promotion_price properties: promotion_price: description: Optional promotion price supplied by this operation. Null means unknown. type: - number - required: - rating properties: rating: description: Source rating; read its accompanying scale and vote count. type: - object properties: max: description: Optional max supplied by this operation. Null means unknown. type: - number - 'null' value: description: Optional value supplied by this operation. Null means unknown. type: - number - 'null' additionalProperties: true - required: - sales properties: sales: description: Optional sales supplied by this operation. Null means unknown. type: - number - required: - sales_label properties: sales_label: description: Optional sales label supplied by this operation. Null means unknown. type: - string minLength: 1 - required: - selling_points properties: selling_points: description: Source array was empty in the reviewed captures; item fields remain unspecified. type: - array items: {} - required: - shop properties: shop: description: Optional shop supplied by this operation. Null means unknown. type: - object properties: id: description: Source identifier. Preserve the supplied type and exact value. type: - string - 'null' name: description: Optional name supplied by this operation. Null means unknown. type: - string - 'null' url: description: Original source URL when supplied. type: - string - 'null' additionalProperties: true - required: - sku_id properties: sku_id: description: Optional sku id supplied by this operation. Null means unknown. type: - string minLength: 1 - required: - title properties: title: description: Source title when supplied. type: - string minLength: 1 - required: - url properties: url: description: Original source URL when supplied. type: - string minLength: 1 - required: - video_url properties: video_url: description: Optional video url supplied by this operation. Null means unknown. type: - string minLength: 1 page: description: Optional page supplied by this operation. Null means unknown. type: - number - 'null' query: description: Optional query supplied by this operation. Null means unknown. type: - string - 'null' total_results: description: Optional total results supplied by this operation. Null means unknown. type: - number - 'null' additionalProperties: true required: - items x-contract-version: '2026-09-22' x-validation-scope: Required success payload structure; optional fields and source completeness remain separate. examples: - count: 0 cursor: null has_more: false items: - category: id: example name: example parent: example currency: example discount: example id: example image: https://example.com/example images: - example original_price: 0 platform: example price: 0 promotion_price: 0 rating: max: 0 value: 0 sales: 0 sales_label: example selling_points: [] shop: id: example name: example url: https://example.com/example sku_id: example title: example type: example url: https://example.com/example video_url: https://example.com/example page: 0 query: example total_results: 0 default: description: The error envelope — the same shape for every non-2xx status. content: application/json: schema: $ref: '#/components/schemas/Error' x-credits: 3 x-production-available: true x-capacity: status: not_assessed message: Capacity is workload-dependent; configured routes do not establish sustained throughput or an availability guarantee. x-availability-scope: Structural check of the effective registered chain, production permission, adapter, configured cost and quality floor without request parameters. True is not a live-health, credential, quota, subscription-entitlement, complete-data or deployment-exposure guarantee. False means no structurally eligible candidate; null means metadata could not establish availability. Composite child capability still depends on its component routes. x-live-proven: true /v1/aliexpress/search-promo: get: operationId: aliexpress_search_promo tags: - AliExpress summary: AliExpress promotion products description: Products in a named AliExpress promotion, with prices, discount, sales volume and shop. Costs 3 credits per successful live response. parameters: - name: promotion_name in: query required: true schema: type: string example: New Arrival description: A promotion name from aliexpress/promos - name: query in: query required: false schema: type: string example: '' description: Keyword filter - name: page in: query required: false schema: type: string example: '1' description: Page number - name: limit in: query required: false schema: type: string example: '10' description: Products per page, up to 50 - name: country in: query required: false schema: type: string example: US description: Ship-to country - name: currency in: query required: false schema: type: string example: USD description: Price currency - name: dry_run in: query required: false schema: type: string enum: - '1' - '0' - 'true' - 'false' example: '1' description: 'Read a zero-credit estimate without fetching sources, running AI, or reserving credits. Cache status is a snapshot, not a guarantee at execution. Accepted values: 1, 0, true, false. Case, spaces, hyphens and underscores are interchangeable.' - name: X-Max-Credits in: header required: false schema: type: integer minimum: 0 maximum: 9007199254740991 example: 5 description: Optional credit reservation ceiling for this individual request. Send a non-negative integer in decimal digits. Live execution checks the required reservation after resolving free cache hits or buffered continuation, before charging or calling a supplier. A higher reservation returns HTTP 422 INVALID_PARAMETERS with reason max_credits_exceeded and charges nothing. Invalid header values also return 422. Zero permits only a zero-credit reservation; omitting the header uses normal pricing. dry_run remains a free preview. This does not cap later requests, batches or scheduled runs. security: - ApiKeyHeader: [] - BearerKey: [] responses: '200': description: 'The common success envelope; `data` is endpoint-specific. Many lists use items/count/cursor; bundles use named collections and their documented continuation metadata. HTTP 200 can contain a partial bundle: inspect complete, partial and legs where supplied.' content: application/json: schema: allOf: - $ref: '#/components/schemas/Success' - type: object properties: data: $schema: https://json-schema.org/draft/2020-12/schema $id: https://www.monocrawl.com/schemas/aliexpress/search-promo.json title: aliexpress/search-promo data fields description: Optional data supplied by this operation. Null means unknown. type: object properties: count: description: Number of records in this response, not lifetime or total matches. type: - number - 'null' cursor: description: Opaque next-page token; pass it back unchanged. Null does not prove complete history. type: - string - 'null' has_more: description: Source continuation indicator; null means unknown. type: - boolean - 'null' items: description: Returned records. Source coverage and completeness vary. type: - array items: description: Optional record supplied by this operation. Null means unknown. type: object properties: category: description: Optional category supplied by this operation. Null means unknown. type: - object - 'null' properties: id: description: Source identifier. Preserve the supplied type and exact value. type: - string - 'null' name: description: Optional name supplied by this operation. Null means unknown. type: - string - 'null' parent: description: Optional parent supplied by this operation. Null means unknown. type: - string - 'null' additionalProperties: true currency: description: Optional currency supplied by this operation. Null means unknown. type: - string - 'null' discount: description: Optional discount supplied by this operation. Null means unknown. type: - string - 'null' id: description: Source identifier. Preserve the supplied type and exact value. type: - string - 'null' image: description: Optional image supplied by this operation. Null means unknown. type: - string - 'null' images: description: Optional images supplied by this operation. Null means unknown. type: - array - 'null' items: description: Optional record supplied by this operation. Null means unknown. type: - string - 'null' original_price: description: Optional original price supplied by this operation. Null means unknown. type: - number - 'null' platform: description: Optional platform supplied by this operation. Null means unknown. type: - string - 'null' price: description: Source price. Currency, taxes and availability depend on the listing. type: - number - 'null' promotion_price: description: Optional promotion price supplied by this operation. Null means unknown. type: - number - 'null' sales: description: Optional sales supplied by this operation. Null means unknown. type: - number - 'null' sales_label: description: Optional sales label supplied by this operation. Null means unknown. type: - string - 'null' selling_points: description: Source array was empty in the reviewed captures; item fields remain unspecified. type: - array - 'null' items: {} shop: description: Optional shop supplied by this operation. Null means unknown. type: - object - 'null' properties: id: description: Source identifier. Preserve the supplied type and exact value. type: - string - 'null' name: description: Optional name supplied by this operation. Null means unknown. type: - string - 'null' url: description: Original source URL when supplied. type: - string - 'null' additionalProperties: true sku_id: description: Optional sku id supplied by this operation. Null means unknown. type: - string - 'null' title: description: Source title when supplied. type: - string - 'null' type: description: Optional type supplied by this operation. Null means unknown. type: - string - 'null' url: description: Original source URL when supplied. type: - string - 'null' video_url: description: Optional video url supplied by this operation. Null means unknown. type: - string - 'null' additionalProperties: true allOf: - anyOf: - required: - category properties: category: description: Optional category supplied by this operation. Null means unknown. type: - object properties: id: description: Source identifier. Preserve the supplied type and exact value. type: - string - 'null' name: description: Optional name supplied by this operation. Null means unknown. type: - string - 'null' parent: description: Optional parent supplied by this operation. Null means unknown. type: - string - 'null' additionalProperties: true - required: - currency properties: currency: description: Optional currency supplied by this operation. Null means unknown. type: - string minLength: 1 - required: - discount properties: discount: description: Optional discount supplied by this operation. Null means unknown. type: - string minLength: 1 - required: - id properties: id: description: Source identifier. Preserve the supplied type and exact value. type: - string minLength: 1 - required: - image properties: image: description: Optional image supplied by this operation. Null means unknown. type: - string minLength: 1 - required: - images properties: images: description: Optional images supplied by this operation. Null means unknown. type: - array items: description: Optional record supplied by this operation. Null means unknown. type: - string - 'null' - required: - original_price properties: original_price: description: Optional original price supplied by this operation. Null means unknown. type: - number - required: - price properties: price: description: Source price. Currency, taxes and availability depend on the listing. type: - number - required: - promotion_price properties: promotion_price: description: Optional promotion price supplied by this operation. Null means unknown. type: - number - required: - sales properties: sales: description: Optional sales supplied by this operation. Null means unknown. type: - number - required: - sales_label properties: sales_label: description: Optional sales label supplied by this operation. Null means unknown. type: - string minLength: 1 - required: - selling_points properties: selling_points: description: Source array was empty in the reviewed captures; item fields remain unspecified. type: - array items: {} - required: - shop properties: shop: description: Optional shop supplied by this operation. Null means unknown. type: - object properties: id: description: Source identifier. Preserve the supplied type and exact value. type: - string - 'null' name: description: Optional name supplied by this operation. Null means unknown. type: - string - 'null' url: description: Original source URL when supplied. type: - string - 'null' additionalProperties: true - required: - sku_id properties: sku_id: description: Optional sku id supplied by this operation. Null means unknown. type: - string minLength: 1 - required: - title properties: title: description: Source title when supplied. type: - string minLength: 1 - required: - url properties: url: description: Original source URL when supplied. type: - string minLength: 1 - required: - video_url properties: video_url: description: Optional video url supplied by this operation. Null means unknown. type: - string minLength: 1 page: description: Optional page supplied by this operation. Null means unknown. type: - number - 'null' promotion_name: description: Optional promotion name supplied by this operation. Null means unknown. type: - string - 'null' total_results: description: Optional total results supplied by this operation. Null means unknown. type: - number - 'null' additionalProperties: true required: - items x-contract-version: '2026-09-22' x-validation-scope: Required success payload structure; optional fields and source completeness remain separate. examples: - count: 0 cursor: null has_more: false items: - category: id: example name: example parent: example currency: example discount: example id: example image: https://example.com/example images: - example original_price: 0 platform: example price: 0 promotion_price: 0 sales: 0 sales_label: example selling_points: [] shop: id: example name: example url: https://example.com/example sku_id: example title: example type: example url: https://example.com/example video_url: https://example.com/example page: 0 promotion_name: example total_results: 0 default: description: The error envelope — the same shape for every non-2xx status. content: application/json: schema: $ref: '#/components/schemas/Error' x-credits: 3 x-production-available: true x-capacity: status: not_assessed message: Capacity is workload-dependent; configured routes do not establish sustained throughput or an availability guarantee. x-availability-scope: Structural check of the effective registered chain, production permission, adapter, configured cost and quality floor without request parameters. True is not a live-health, credential, quota, subscription-entitlement, complete-data or deployment-exposure guarantee. False means no structurally eligible candidate; null means metadata could not establish availability. Composite child capability still depends on its component routes. x-live-proven: true /v1/aliexpress/shipping: get: operationId: aliexpress_shipping tags: - AliExpress summary: AliExpress shipping options description: 'Shipping options for an AliExpress product to a country: carrier, fee, days and tracking. Costs 1 credit per successful live response.' parameters: - name: id in: query required: true schema: type: string example: '3256804591426248' description: AliExpress item id - name: region in: query required: false schema: type: string example: US description: Ship-to country - name: quantity in: query required: false schema: type: string example: '1' description: Quantity - name: ext in: query required: false schema: type: string example: '' description: A variant's ext token from aliexpress/product, for variant-specific rates - name: dry_run in: query required: false schema: type: string enum: - '1' - '0' - 'true' - 'false' example: '1' description: 'Read a zero-credit estimate without fetching sources, running AI, or reserving credits. Cache status is a snapshot, not a guarantee at execution. Accepted values: 1, 0, true, false. Case, spaces, hyphens and underscores are interchangeable.' - name: X-Max-Credits in: header required: false schema: type: integer minimum: 0 maximum: 9007199254740991 example: 5 description: Optional credit reservation ceiling for this individual request. Send a non-negative integer in decimal digits. Live execution checks the required reservation after resolving free cache hits or buffered continuation, before charging or calling a supplier. A higher reservation returns HTTP 422 INVALID_PARAMETERS with reason max_credits_exceeded and charges nothing. Invalid header values also return 422. Zero permits only a zero-credit reservation; omitting the header uses normal pricing. dry_run remains a free preview. This does not cap later requests, batches or scheduled runs. security: - ApiKeyHeader: [] - BearerKey: [] responses: '200': description: 'The common success envelope; `data` is endpoint-specific. Many lists use items/count/cursor; bundles use named collections and their documented continuation metadata. HTTP 200 can contain a partial bundle: inspect complete, partial and legs where supplied.' content: application/json: schema: allOf: - $ref: '#/components/schemas/Success' - type: object properties: data: $schema: https://json-schema.org/draft/2020-12/schema $id: https://www.monocrawl.com/schemas/aliexpress/shipping.json title: aliexpress/shipping data fields description: Optional data supplied by this operation. Null means unknown. type: object properties: count: description: Number of records in this response, not lifetime or total matches. type: - number - 'null' currency: description: Optional currency supplied by this operation. Null means unknown. type: - string - 'null' has_more: description: Source continuation indicator; null means unknown. type: - boolean - 'null' items: description: Returned records. Source coverage and completeness vary. type: - array items: description: Optional record supplied by this operation. Null means unknown. type: object properties: from: description: Optional from supplied by this operation. Null means unknown. type: - string - 'null' notes: description: Optional notes supplied by this operation. Null means unknown. type: - array - 'null' items: description: Optional record supplied by this operation. Null means unknown. type: - string - 'null' to: description: Optional to supplied by this operation. Null means unknown. type: - string - 'null' additionalProperties: true allOf: - anyOf: - required: - from properties: from: description: Optional from supplied by this operation. Null means unknown. type: - string minLength: 1 - required: - notes properties: notes: description: Optional notes supplied by this operation. Null means unknown. type: - array items: description: Optional record supplied by this operation. Null means unknown. type: - string - 'null' - required: - to properties: to: description: Optional to supplied by this operation. Null means unknown. type: - string minLength: 1 product_id: description: Optional product id supplied by this operation. Null means unknown. type: - string - 'null' region: description: Optional region supplied by this operation. Null means unknown. type: - string - 'null' additionalProperties: true required: - items x-contract-version: '2026-09-22' x-validation-scope: Required success payload structure; optional fields and source completeness remain separate. examples: - count: 0 currency: example has_more: false items: - from: example notes: - example to: example product_id: example region: example default: description: The error envelope — the same shape for every non-2xx status. content: application/json: schema: $ref: '#/components/schemas/Error' x-credits: 1 x-production-available: true x-capacity: status: not_assessed message: Capacity is workload-dependent; configured routes do not establish sustained throughput or an availability guarantee. x-availability-scope: Structural check of the effective registered chain, production permission, adapter, configured cost and quality floor without request parameters. True is not a live-health, credential, quota, subscription-entitlement, complete-data or deployment-exposure guarantee. False means no structurally eligible candidate; null means metadata could not establish availability. Composite child capability still depends on its component routes. x-live-proven: true /v1/aliexpress/similar: get: operationId: aliexpress_similar tags: - AliExpress summary: Similar AliExpress products description: Products similar to an AliExpress product (or to a keyword), from the marketplace's own matching. Costs 3 credits per successful live response. parameters: - name: product_id in: query required: false schema: type: string example: '3256806145778732' description: A product id or URL - name: query in: query required: false schema: type: string example: headphones description: A keyword, when no product id is given - name: country in: query required: false schema: type: string example: US description: Ship-to country - name: currency in: query required: false schema: type: string example: USD description: Price currency - name: dry_run in: query required: false schema: type: string enum: - '1' - '0' - 'true' - 'false' example: '1' description: 'Read a zero-credit estimate without fetching sources, running AI, or reserving credits. Cache status is a snapshot, not a guarantee at execution. Accepted values: 1, 0, true, false. Case, spaces, hyphens and underscores are interchangeable.' - name: X-Max-Credits in: header required: false schema: type: integer minimum: 0 maximum: 9007199254740991 example: 5 description: Optional credit reservation ceiling for this individual request. Send a non-negative integer in decimal digits. Live execution checks the required reservation after resolving free cache hits or buffered continuation, before charging or calling a supplier. A higher reservation returns HTTP 422 INVALID_PARAMETERS with reason max_credits_exceeded and charges nothing. Invalid header values also return 422. Zero permits only a zero-credit reservation; omitting the header uses normal pricing. dry_run remains a free preview. This does not cap later requests, batches or scheduled runs. security: - ApiKeyHeader: [] - BearerKey: [] responses: '200': description: 'The common success envelope; `data` is endpoint-specific. Many lists use items/count/cursor; bundles use named collections and their documented continuation metadata. HTTP 200 can contain a partial bundle: inspect complete, partial and legs where supplied.' content: application/json: schema: allOf: - $ref: '#/components/schemas/Success' - type: object properties: data: $schema: https://json-schema.org/draft/2020-12/schema $id: https://www.monocrawl.com/schemas/aliexpress/similar.json title: aliexpress/similar data fields description: Optional data supplied by this operation. Null means unknown. type: object properties: count: description: Number of records in this response, not lifetime or total matches. type: - number - 'null' has_more: description: Source continuation indicator; null means unknown. type: - boolean - 'null' items: description: Returned records. Source coverage and completeness vary. type: - array items: description: Optional record supplied by this operation. Null means unknown. type: object properties: category: description: Optional category supplied by this operation. Null means unknown. type: - object - 'null' properties: id: description: Source identifier. Preserve the supplied type and exact value. type: - string - 'null' name: description: Optional name supplied by this operation. Null means unknown. type: - string - 'null' parent: description: Optional parent supplied by this operation. Null means unknown. type: - string - 'null' additionalProperties: true currency: description: Optional currency supplied by this operation. Null means unknown. type: - string - 'null' discount: description: Optional discount supplied by this operation. Null means unknown. type: - string - 'null' id: description: Source identifier. Preserve the supplied type and exact value. type: - string - 'null' image: description: Optional image supplied by this operation. Null means unknown. type: - string - 'null' images: description: Optional images supplied by this operation. Null means unknown. type: - array - 'null' items: description: Optional record supplied by this operation. Null means unknown. type: - string - 'null' original_price: description: Optional original price supplied by this operation. Null means unknown. type: - number - 'null' platform: description: Optional platform supplied by this operation. Null means unknown. type: - string - 'null' price: description: Source price. Currency, taxes and availability depend on the listing. type: - number - 'null' promotion_price: description: Optional promotion price supplied by this operation. Null means unknown. type: - number - 'null' rating: description: Source rating; read its accompanying scale and vote count. type: - object - 'null' properties: max: description: Optional max supplied by this operation. Null means unknown. type: - number - 'null' value: description: Optional value supplied by this operation. Null means unknown. type: - number - 'null' additionalProperties: true sales: description: Optional sales supplied by this operation. Null means unknown. type: - number - 'null' sales_label: description: Optional sales label supplied by this operation. Null means unknown. type: - string - 'null' selling_points: description: Source array was empty in the reviewed captures; item fields remain unspecified. type: - array - 'null' items: {} shop: description: Optional shop supplied by this operation. Null means unknown. type: - object - 'null' properties: id: description: Source identifier. Preserve the supplied type and exact value. type: - string - 'null' name: description: Optional name supplied by this operation. Null means unknown. type: - string - 'null' url: description: Original source URL when supplied. type: - string - 'null' additionalProperties: true sku_id: description: Optional sku id supplied by this operation. Null means unknown. type: - string - 'null' title: description: Source title when supplied. type: - string - 'null' type: description: Optional type supplied by this operation. Null means unknown. type: - string - 'null' url: description: Original source URL when supplied. type: - string - 'null' video_url: description: Optional video url supplied by this operation. Null means unknown. type: - string - 'null' additionalProperties: true allOf: - anyOf: - required: - category properties: category: description: Optional category supplied by this operation. Null means unknown. type: - object properties: id: description: Source identifier. Preserve the supplied type and exact value. type: - string - 'null' name: description: Optional name supplied by this operation. Null means unknown. type: - string - 'null' parent: description: Optional parent supplied by this operation. Null means unknown. type: - string - 'null' additionalProperties: true - required: - currency properties: currency: description: Optional currency supplied by this operation. Null means unknown. type: - string minLength: 1 - required: - discount properties: discount: description: Optional discount supplied by this operation. Null means unknown. type: - string minLength: 1 - required: - id properties: id: description: Source identifier. Preserve the supplied type and exact value. type: - string minLength: 1 - required: - image properties: image: description: Optional image supplied by this operation. Null means unknown. type: - string minLength: 1 - required: - images properties: images: description: Optional images supplied by this operation. Null means unknown. type: - array items: description: Optional record supplied by this operation. Null means unknown. type: - string - 'null' - required: - original_price properties: original_price: description: Optional original price supplied by this operation. Null means unknown. type: - number - required: - price properties: price: description: Source price. Currency, taxes and availability depend on the listing. type: - number - required: - promotion_price properties: promotion_price: description: Optional promotion price supplied by this operation. Null means unknown. type: - number - required: - rating properties: rating: description: Source rating; read its accompanying scale and vote count. type: - object properties: max: description: Optional max supplied by this operation. Null means unknown. type: - number - 'null' value: description: Optional value supplied by this operation. Null means unknown. type: - number - 'null' additionalProperties: true - required: - sales properties: sales: description: Optional sales supplied by this operation. Null means unknown. type: - number - required: - sales_label properties: sales_label: description: Optional sales label supplied by this operation. Null means unknown. type: - string minLength: 1 - required: - selling_points properties: selling_points: description: Source array was empty in the reviewed captures; item fields remain unspecified. type: - array items: {} - required: - shop properties: shop: description: Optional shop supplied by this operation. Null means unknown. type: - object properties: id: description: Source identifier. Preserve the supplied type and exact value. type: - string - 'null' name: description: Optional name supplied by this operation. Null means unknown. type: - string - 'null' url: description: Original source URL when supplied. type: - string - 'null' additionalProperties: true - required: - sku_id properties: sku_id: description: Optional sku id supplied by this operation. Null means unknown. type: - string minLength: 1 - required: - title properties: title: description: Source title when supplied. type: - string minLength: 1 - required: - url properties: url: description: Original source URL when supplied. type: - string minLength: 1 - required: - video_url properties: video_url: description: Optional video url supplied by this operation. Null means unknown. type: - string minLength: 1 page: description: Optional page supplied by this operation. Null means unknown. type: - number - 'null' source_product_id: description: Optional source product id supplied by this operation. Null means unknown. type: - string - 'null' additionalProperties: true required: - items x-contract-version: '2026-09-22' x-validation-scope: Required success payload structure; optional fields and source completeness remain separate. examples: - count: 0 has_more: false items: - category: id: example name: example parent: example currency: example discount: example id: example image: https://example.com/example images: - example original_price: 0 platform: example price: 0 promotion_price: 0 rating: max: 0 value: 0 sales: 0 sales_label: example selling_points: [] shop: id: example name: example url: https://example.com/example sku_id: example title: example type: example url: https://example.com/example video_url: https://example.com/example page: 0 source_product_id: example default: description: The error envelope — the same shape for every non-2xx status. content: application/json: schema: $ref: '#/components/schemas/Error' x-credits: 3 x-production-available: true x-capacity: status: not_assessed message: Capacity is workload-dependent; configured routes do not establish sustained throughput or an availability guarantee. x-availability-scope: Structural check of the effective registered chain, production permission, adapter, configured cost and quality floor without request parameters. True is not a live-health, credential, quota, subscription-entitlement, complete-data or deployment-exposure guarantee. False means no structurally eligible candidate; null means metadata could not establish availability. Composite child capability still depends on its component routes. x-live-proven: true /v1/aliexpress/store: get: operationId: aliexpress_store tags: - AliExpress summary: AliExpress store description: 'One AliExpress store: name, followers, product count, positive rate and seller level. Costs 1 credit per successful live response.' parameters: - name: id in: query required: true schema: type: string example: '231651707' description: Seller id from a product - name: dry_run in: query required: false schema: type: string enum: - '1' - '0' - 'true' - 'false' example: '1' description: 'Read a zero-credit estimate without fetching sources, running AI, or reserving credits. Cache status is a snapshot, not a guarantee at execution. Accepted values: 1, 0, true, false. Case, spaces, hyphens and underscores are interchangeable.' - name: X-Max-Credits in: header required: false schema: type: integer minimum: 0 maximum: 9007199254740991 example: 5 description: Optional credit reservation ceiling for this individual request. Send a non-negative integer in decimal digits. Live execution checks the required reservation after resolving free cache hits or buffered continuation, before charging or calling a supplier. A higher reservation returns HTTP 422 INVALID_PARAMETERS with reason max_credits_exceeded and charges nothing. Invalid header values also return 422. Zero permits only a zero-credit reservation; omitting the header uses normal pricing. dry_run remains a free preview. This does not cap later requests, batches or scheduled runs. security: - ApiKeyHeader: [] - BearerKey: [] responses: '200': description: 'The common success envelope; `data` is endpoint-specific. Many lists use items/count/cursor; bundles use named collections and their documented continuation metadata. HTTP 200 can contain a partial bundle: inspect complete, partial and legs where supplied.' content: application/json: schema: allOf: - $ref: '#/components/schemas/Success' - type: object properties: data: $schema: https://json-schema.org/draft/2020-12/schema $id: https://www.monocrawl.com/schemas/aliexpress/store.json title: aliexpress/store data fields description: Optional data supplied by this operation. Null means unknown. type: object properties: followers: description: Optional followers supplied by this operation. Null means unknown. type: - number - 'null' id: description: Source identifier. Preserve the supplied type and exact value. type: - string - 'null' image: description: Optional image supplied by this operation. Null means unknown. type: - string - 'null' level: description: Optional level supplied by this operation. Null means unknown. type: - string - 'null' name: description: Optional name supplied by this operation. Null means unknown. type: - string - 'null' platform: description: Optional platform supplied by this operation. Null means unknown. type: - string - 'null' positive_count: description: Optional positive count supplied by this operation. Null means unknown. type: - number - 'null' positive_rate: description: Optional positive rate supplied by this operation. Null means unknown. type: - number - 'null' products_count: description: Optional products count supplied by this operation. Null means unknown. type: - number - 'null' ratings_count: description: Optional ratings count supplied by this operation. Null means unknown. type: - number - 'null' score: description: Optional score supplied by this operation. Null means unknown. type: - number - 'null' seller_id: description: Optional seller id supplied by this operation. Null means unknown. type: - string - 'null' type: description: Optional type supplied by this operation. Null means unknown. type: - string - 'null' url: description: Original source URL when supplied. type: - string - 'null' additionalProperties: true allOf: - anyOf: - required: - followers properties: followers: description: Optional followers supplied by this operation. Null means unknown. type: - number - required: - id properties: id: description: Source identifier. Preserve the supplied type and exact value. type: - string minLength: 1 - required: - image properties: image: description: Optional image supplied by this operation. Null means unknown. type: - string minLength: 1 - required: - level properties: level: description: Optional level supplied by this operation. Null means unknown. type: - string minLength: 1 - required: - name properties: name: description: Optional name supplied by this operation. Null means unknown. type: - string minLength: 1 - required: - positive_count properties: positive_count: description: Optional positive count supplied by this operation. Null means unknown. type: - number - required: - positive_rate properties: positive_rate: description: Optional positive rate supplied by this operation. Null means unknown. type: - number - required: - products_count properties: products_count: description: Optional products count supplied by this operation. Null means unknown. type: - number - required: - ratings_count properties: ratings_count: description: Optional ratings count supplied by this operation. Null means unknown. type: - number - required: - score properties: score: description: Optional score supplied by this operation. Null means unknown. type: - number - required: - seller_id properties: seller_id: description: Optional seller id supplied by this operation. Null means unknown. type: - string minLength: 1 - required: - url properties: url: description: Original source URL when supplied. type: - string minLength: 1 x-contract-version: '2026-09-22' x-validation-scope: Required success payload structure; optional fields and source completeness remain separate. examples: - followers: 0 id: example image: https://example.com/example level: example name: example platform: example positive_count: 0 positive_rate: 0 products_count: 0 ratings_count: 0 score: 0 seller_id: example type: example url: https://example.com/example default: description: The error envelope — the same shape for every non-2xx status. content: application/json: schema: $ref: '#/components/schemas/Error' x-credits: 1 x-production-available: true x-capacity: status: not_assessed message: Capacity is workload-dependent; configured routes do not establish sustained throughput or an availability guarantee. x-availability-scope: Structural check of the effective registered chain, production permission, adapter, configured cost and quality floor without request parameters. True is not a live-health, credential, quota, subscription-entitlement, complete-data or deployment-exposure guarantee. False means no structurally eligible candidate; null means metadata could not establish availability. Composite child capability still depends on its component routes. x-live-proven: true /v1/aliexpress/store-products: get: operationId: aliexpress_store_products tags: - AliExpress summary: AliExpress store products description: Products of one AliExpress store, optionally matching a keyword. Costs 3 credits per successful live response. parameters: - name: seller_id in: query required: true schema: type: string example: '6003681832' description: Seller id from aliexpress/product's seller block - name: store_id in: query required: true schema: type: string example: '1105134056' description: Store id from the same seller block - name: query in: query required: false schema: type: string example: '' description: Keyword within the store - name: page in: query required: false schema: type: string example: '1' description: Page number - name: sort in: query required: false schema: type: string x-values-from: data.sorts example: '' description: A sort value from the response - name: dry_run in: query required: false schema: type: string enum: - '1' - '0' - 'true' - 'false' example: '1' description: 'Read a zero-credit estimate without fetching sources, running AI, or reserving credits. Cache status is a snapshot, not a guarantee at execution. Accepted values: 1, 0, true, false. Case, spaces, hyphens and underscores are interchangeable.' - name: X-Max-Credits in: header required: false schema: type: integer minimum: 0 maximum: 9007199254740991 example: 5 description: Optional credit reservation ceiling for this individual request. Send a non-negative integer in decimal digits. Live execution checks the required reservation after resolving free cache hits or buffered continuation, before charging or calling a supplier. A higher reservation returns HTTP 422 INVALID_PARAMETERS with reason max_credits_exceeded and charges nothing. Invalid header values also return 422. Zero permits only a zero-credit reservation; omitting the header uses normal pricing. dry_run remains a free preview. This does not cap later requests, batches or scheduled runs. security: - ApiKeyHeader: [] - BearerKey: [] responses: '200': description: 'The common success envelope; `data` is endpoint-specific. Many lists use items/count/cursor; bundles use named collections and their documented continuation metadata. HTTP 200 can contain a partial bundle: inspect complete, partial and legs where supplied.' content: application/json: schema: allOf: - $ref: '#/components/schemas/Success' - type: object properties: data: $schema: https://json-schema.org/draft/2020-12/schema $id: https://www.monocrawl.com/schemas/aliexpress/store-products.json title: aliexpress/store-products data fields description: Optional data supplied by this operation. Null means unknown. type: object properties: count: description: Number of records in this response, not lifetime or total matches. type: - number - 'null' cursor: description: Opaque next-page token; pass it back unchanged. Null does not prove complete history. type: - string - 'null' has_more: description: Source continuation indicator; null means unknown. type: - boolean - 'null' items: description: Returned records. Source coverage and completeness vary. type: - array items: description: Optional record supplied by this operation. Null means unknown. type: object properties: id: description: Source identifier. Preserve the supplied type and exact value. type: - string - 'null' image: description: Optional image supplied by this operation. Null means unknown. type: - string - 'null' platform: description: Optional platform supplied by this operation. Null means unknown. type: - string - 'null' price: description: Source price. Currency, taxes and availability depend on the listing. type: - number - 'null' price_range: description: Optional price range supplied by this operation. Null means unknown. type: - object - 'null' properties: max: description: Optional max supplied by this operation. Null means unknown. type: - number - 'null' min: description: Optional min supplied by this operation. Null means unknown. type: - number - 'null' additionalProperties: true promotion_price: description: Optional promotion price supplied by this operation. Null means unknown. type: - object - 'null' properties: max: description: Optional max supplied by this operation. Null means unknown. type: - number - 'null' min: description: Optional min supplied by this operation. Null means unknown. type: - number - 'null' additionalProperties: true rating: description: Source rating; read its accompanying scale and vote count. type: - object - 'null' properties: max: description: Optional max supplied by this operation. Null means unknown. type: - number - 'null' value: description: Optional value supplied by this operation. Null means unknown. type: - number - 'null' votes: description: Optional votes supplied by this operation. Null means unknown. type: - number - 'null' additionalProperties: true sales: description: Optional sales supplied by this operation. Null means unknown. type: - number - 'null' sales_label: description: Optional sales label supplied by this operation. Null means unknown. type: - string - 'null' selling_points: description: Source array was empty in the reviewed captures; item fields remain unspecified. type: - array - 'null' items: {} title: description: Source title when supplied. type: - string - 'null' type: description: Optional type supplied by this operation. Null means unknown. type: - string - 'null' url: description: Original source URL when supplied. type: - string - 'null' additionalProperties: true allOf: - anyOf: - required: - id properties: id: description: Source identifier. Preserve the supplied type and exact value. type: - string minLength: 1 - required: - image properties: image: description: Optional image supplied by this operation. Null means unknown. type: - string minLength: 1 - required: - price properties: price: description: Source price. Currency, taxes and availability depend on the listing. type: - number - required: - price_range properties: price_range: description: Optional price range supplied by this operation. Null means unknown. type: - object properties: max: description: Optional max supplied by this operation. Null means unknown. type: - number - 'null' min: description: Optional min supplied by this operation. Null means unknown. type: - number - 'null' additionalProperties: true - required: - promotion_price properties: promotion_price: description: Optional promotion price supplied by this operation. Null means unknown. type: - object properties: max: description: Optional max supplied by this operation. Null means unknown. type: - number - 'null' min: description: Optional min supplied by this operation. Null means unknown. type: - number - 'null' additionalProperties: true - required: - rating properties: rating: description: Source rating; read its accompanying scale and vote count. type: - object properties: max: description: Optional max supplied by this operation. Null means unknown. type: - number - 'null' value: description: Optional value supplied by this operation. Null means unknown. type: - number - 'null' votes: description: Optional votes supplied by this operation. Null means unknown. type: - number - 'null' additionalProperties: true - required: - sales properties: sales: description: Optional sales supplied by this operation. Null means unknown. type: - number - required: - sales_label properties: sales_label: description: Optional sales label supplied by this operation. Null means unknown. type: - string minLength: 1 - required: - selling_points properties: selling_points: description: Source array was empty in the reviewed captures; item fields remain unspecified. type: - array items: {} - required: - title properties: title: description: Source title when supplied. type: - string minLength: 1 - required: - url properties: url: description: Original source URL when supplied. type: - string minLength: 1 page: description: Optional page supplied by this operation. Null means unknown. type: - number - 'null' seller_id: description: Optional seller id supplied by this operation. Null means unknown. type: - string - 'null' store_id: description: Optional store id supplied by this operation. Null means unknown. type: - string - 'null' total: description: Source-reported total; null is unknown. type: - number - 'null' total_pages: description: Optional total pages supplied by this operation. Null means unknown. type: - number - 'null' additionalProperties: true required: - items x-contract-version: '2026-09-22' x-validation-scope: Required success payload structure; optional fields and source completeness remain separate. examples: - count: 0 cursor: null has_more: false items: - id: example image: https://example.com/example platform: example price: 0 price_range: max: 0 min: 0 promotion_price: max: 0 min: 0 rating: max: 0 value: 0 votes: 0 sales: 0 sales_label: example selling_points: [] title: example type: example url: https://example.com/example page: 0 seller_id: example store_id: example total: 0 total_pages: 0 default: description: The error envelope — the same shape for every non-2xx status. content: application/json: schema: $ref: '#/components/schemas/Error' x-credits: 3 x-production-available: true x-capacity: status: not_assessed message: Capacity is workload-dependent; configured routes do not establish sustained throughput or an availability guarantee. x-availability-scope: Structural check of the effective registered chain, production permission, adapter, configured cost and quality floor without request parameters. True is not a live-health, credential, quota, subscription-entitlement, complete-data or deployment-exposure guarantee. False means no structurally eligible candidate; null means metadata could not establish availability. Composite child capability still depends on its component routes. x-live-proven: true components: schemas: Error: type: object required: - success - error - credits_used - request_id properties: success: const: false error: type: object required: - type - message - status properties: type: type: string enum: - UNAUTHORIZED - KEY_REVOKED - KEY_LIMIT_EXCEEDED - RATE_LIMITED - INSUFFICIENT_CREDITS - RESOURCE_NOT_FOUND - INVALID_PARAMETERS - TARGET_ACCESS_DENIED - UPSTREAM_ERROR - UPSTREAM_TIMEOUT - FREE_CAPACITY_UNAVAILABLE - CAPACITY_UNAVAILABLE - ENDPOINT_NOT_FOUND - ENDPOINT_NOT_AVAILABLE - FAIR_USE_EXCEEDED - INTERNAL_ERROR message: type: string status: type: integer doc_url: type: string description: Deep link to the exact section of the errors guide for this type. details: type: object credits_used: type: - integer - 'null' description: Confirmed net charge; null when billing is pending reconciliation. Inspect error.details.billing_status and retain request_id. credits_remaining: type: integer request_id: type: string Success: type: object required: - success - platform - endpoint - data - credits_used - credits_remaining - request_id properties: _completeness: type: object description: Reported response completeness, not a guarantee of complete platform history. Missing source assertions remain unknown. properties: state: type: string enum: - complete - partial - unknown scope: type: string inspection_limited: type: boolean success: const: true platform: type: string endpoint: type: string description: The resolved path, e.g. `/v1/github/profile`. data: description: Amazon responses include marketplace.country and marketplace.domain (resolved request marketplace, UK by default). X profiles preserve location, bio_link and cover_url when supplied. TikTok profiles preserve commerce_user, seller, region, location and business_category when supplied; region identifies the account region rather than personal residence. TikTok comments use platform_default selection, which can change between fetches; keep the same video and options when following cursors. Amazon review variant is readable text. Facebook profiles preserve cover_url, following and created_at when supplied; likes_count and followers are distinct and follower totals may be rounded. Endpoint-specific normalized payload, not one universal post/profile schema. Many lists use items/count/cursor; a null cursor means no usable next cursor was supplied, not proof that all history was retrieved. Check has_more and warnings where present. Social full-profile bundles use posts_cursor and posts_pagination.next_params; retain all returned next parameters. YouTube channel bundles instead use recent_videos, cursor and recent_videos_pagination. Inspect complete/partial/legs where supplied for bounded or failed components. Optional model-derived fields are labelled, not source facts. credits_used: type: integer credits_remaining: type: integer request_id: type: string cached: type: boolean stale: type: boolean description: True only for an explicitly labelled, zero-credit reference snapshot served after a temporary upstream failure. age_seconds: type: integer minimum: 0 description: Age of a stale snapshot since its original retrieval; not reset by outage recovery. fetched_at: type: string format: date-time description: Original retrieval time of a stale snapshot, in UTC. synthetic: type: boolean description: Present and true only on the explicitly requested /sandbox surface. Synthetic responses are representative and charged 0 credits; production /v1 never returns them. degraded: type: boolean description: Reserved for sandbox compatibility. Production /v1 reports upstream failure as an error and never serves a representative fallback. securitySchemes: ApiKeyHeader: type: apiKey in: header name: x-api-key description: Your API key (`mn_…`), from the console. The recommended style. BearerKey: type: http scheme: bearer description: The same key as a Bearer token, for clients that only expose an Authorization field. Keys are never accepted in the query string — URLs leak into logs and referrers. x-provenance: method: harvested publisher: Monocrawl source: https://www.monocrawl.com/openapi.json note: split by refine-openapis from the provider's own published document, verified by fetch (openapi/_original/*.fetch.json); stamped by stamp-openapi-provenance.py (roadmap#793)