openapi: 3.0.0 info: description: | API documentation for U-KOMI app ## Rate limiting Requests exceeding 1 request per second per IP address may be rate limited. Rate-limited requests return `429 Too Many Requests`. version: 1.0.1 title: U-KOMI API contact: email: info@u-komi.com license: name: Apache 2.0 url: http://www.apache.org/licenses/LICENSE-2.0.html tags: - name: Authentication description: API authentication basics - name: Account description: Retrieve Account basics - name: Reviews description: Retrieve Product Reviews - name: Products description: Create, modify, review product meta data and review prouct summary in the U-KOMI system. - name: Orders description: Create, modify and retrieve orders in the U-KOMI system. Orders represents purchases made in the store. U-KOMI uses these orders to help generate more reviews from past shoppers. - name: Groups description: Product Grouping allows you to create groups of related products and share reviews between all the products in the same group. - name: Q&A description: Retrieve Questions and Answers for a given product using id. - name: Visual Curation description: Retrieve visual UGC (Instagram, X/Twitter, TikTok, YouTube, review photos and admin uploads) at album, album-media and gallery level. - name: Store Badges description: Retrieve the badges a store publicly displays. - name: FAQ description: Retrieve published FAQ content as JSON, e.g. to render FAQs as static HTML. paths: "/visual_ugc/{API_KEY}/albums": post: tags: - Visual Curation summary: Retrieve all albums operationId: visualUgcAlbums description: > Call api to retrieve all visual-curation albums for the account. Scoped to the authenticated account. The access token may also be sent as a Bearer token in the Authorization header. parameters: - name: API_KEY description: API KEY provided by Vendor in: path required: true schema: type: string requestBody: content: application/json: schema: $ref: "#/components/schemas/VisualUgcAlbumsObject" description: Access token and optional filters / pagination required: true responses: "200": description: List of albums content: application/json: schema: $ref: "#/components/schemas/VisualUgcAlbumsResponse" "401": description: Invalid API Key content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" "410": description: Unauthorized Access content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" "/visual_ugc/{API_KEY}/albums/{album_id}/media": post: tags: - Visual Curation summary: Retrieve all media in an album operationId: visualUgcAlbumMedia description: > Call api to retrieve all media (Instagram, X/Twitter, TikTok, YouTube, review photos, admin uploads) inside an album, normalized into a single shape. Cursor-paginated and scoped to the authenticated account. The access token may also be sent as a Bearer token in the Authorization header. parameters: - name: API_KEY description: API KEY provided by Vendor in: path required: true schema: type: string - name: album_id description: Encoded album id (the album_id returned by the albums endpoint) in: path required: true schema: type: string requestBody: content: application/json: schema: $ref: "#/components/schemas/VisualUgcAlbumMediaObject" description: Access token and optional filters / sorting / pagination required: true responses: "200": description: List of album media content: application/json: schema: $ref: "#/components/schemas/VisualUgcAlbumMediaResponse" "401": description: Invalid API Key content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" "404": description: Album not found content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" "410": description: Unauthorized Access content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" "/visual_ugc/{API_KEY}/galleries": post: tags: - Visual Curation summary: Retrieve all galleries operationId: visualUgcGalleries description: > Call api to retrieve galleries and their linked album. Scoped to the authenticated account. The access token may also be sent as a Bearer token in the Authorization header. parameters: - name: API_KEY description: API KEY provided by Vendor in: path required: true schema: type: string requestBody: content: application/json: schema: $ref: "#/components/schemas/VisualUgcGalleriesObject" description: Access token and optional pagination required: true responses: "200": description: List of galleries content: application/json: schema: $ref: "#/components/schemas/VisualUgcGalleriesResponse" "401": description: Invalid API Key content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" "410": description: Unauthorized Access content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" /auth/access_token: post: tags: - Authentication summary: Get access token operationId: access_token description: >- access_token are used to authenticate and authorize an account. An access_token is required in non-public API calls to ensure private account data is accessible only by authorized users.

Access Token Expiration Policy

⚠️ Note: If the token is not used within the initial 14-day window, it will expire and require regeneration.

requestBody: content: application/x-www-form-urlencoded: schema: type: object properties: api_key: description: API KEY provided by Vendor type: string api_secret: description: API Secret provided by Vendor type: string required: - api_key - api_secret required: true responses: "200": description: Access Token to access non-public API calls content: application/json: schema: $ref: "#/components/schemas/AuthenticationResponse" "401": description: Invalid/Expired Access Token content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" "402": description: No action specified content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" "403": description: Missing API Key and/or API Secret content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" "/account/{API_KEY}/view_basic": post: tags: - Account summary: Retrieve account details operationId: account_basic description: | Call api to retrieve account details. parameters: - name: API_KEY description: API KEY provided by Vendor in: path required: true schema: type: string requestBody: content: application/x-www-form-urlencoded: schema: type: object properties: access_token: description: ACCESS TOKEN provided by API type: string required: - access_token required: true responses: "200": description: View account details content: application/json: schema: $ref: "#/components/schemas/AccountDetailsResponse" "401": description: Missing API Key and/or API Secret content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" "402": description: Invalid/Expired Access Token content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" "403": description: No action specified content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" "404": description: Something wrong with account configuration. Please contact U-KOMI Support content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" "/reviews/{API_KEY}/view": get: tags: - Reviews summary: Retrieve all reviews operationId: allreview description: > Call api for all review and Pass data in given format to get selected review parameters: - name: API_KEY description: API KEY provided by Vendor in: path required: true schema: type: string - name: access_token description: ACCESS TOKEN provided by API in: query required: true schema: type: string - name: from_id description: Get review after selected id Eg.12345 in: query required: false schema: type: string - name: customer_id description: Get review from customer id Eg.cust. Use customers to specify multiple customer ids. in: query required: false schema: type: string - name: customers description: | Get reviews from multiple customer ids. Pass an array (customers[]=cust_1&customers[]=cust_2) or a comma-separated string (customers=cust_1,cust_2). Up to 100 customer ids are allowed. If customer_id is also passed, reviews matching any of the given customer ids are returned. in: query required: false schema: oneOf: - type: array items: type: string - type: string style: form explode: true example: - cust_1 - cust_2 - name: from_date description: Get review after selected date Eg.2017-11-03 in: query required: false schema: type: string - name: updated_date description: Get data updated/created after selected date Eg.2017-11-03 in: query required: false schema: type: string - name: count description: Number of reviews to return eg.10 in: query required: false schema: type: string - name: page description: Page number to return reviews for eg.2 in: query required: false schema: type: string - name: likes description: Add likes in result Eg.0/1. 0 is default in: query required: false schema: type: string - name: custom_questions description: Add custom questions in result Eg.0/1. 0 is default in: query required: false schema: type: string - name: question_public description: Get private/public questions in result Eg.0/1. 1 is default public in: query required: false schema: type: string - name: question_enable description: Get disable/enable questions in result Eg.0/1. 1 is default enable in: query required: false schema: type: string - name: deleted description: Include unpublished reviews Eg.0/1 in: query required: false schema: type: string - name: sort description: "Responses can be sorted by: date/stars/like/sentiment/buyer/picture/response" in: query required: false schema: type: string - name: sort_order description: Sorting order. Option is asc/desc in: query required: false schema: type: string - name: stars description: Star rating for the product (1 to 5) Eg.5 in: query required: false schema: type: string - name: stars_sorting description: Options are greater/less/equal. Default is equal in: query required: false schema: type: string - name: post_type description: Options are email/import/website/line/inline_form. You can use multiple by comma separated. Default is null in: query required: false schema: type: string - name: review_type description: Options are site/product/all. Default is all in: query required: false schema: type: string - name: product_id description: Product id. Default is all in: query required: false schema: type: string - name: group description: Group status are true/false. Default is false in: query required: false schema: type: string - name: group_name description: Group name. Default is blank in: query required: false schema: type: string - name: label description: Label name. Default is blank. Comma seprated for multiple in: query required: false schema: type: string responses: "200": description: View all review content: application/json: schema: $ref: "#/components/schemas/ViewAllReviewResponse" "401": description: Invalid/Expired Access Token content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" "402": description: No action specified content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" "403": description: Missing API Key / Customer limit exceeded. Max 100 customers are allowed. content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" "404": description: Action not found "405": description: Product not found. zero product "406": description: Review not found. zero review / Invalid param customers. Accepted format is an array of customer ids. content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" "407": description: Product id is not valid "408": description: Review id is not valid "409": description: Stars rating is not valid "410": description: Unauthorized Access "411": description: Something wrong with account configuration. Please contact U-KOMI Support. "/reviews/{API_KEY}/view_basic": get: tags: - Reviews summary: Retrieve all reviews operationId: view_basic description: > Call api for all review and Pass data in given format to get selected review parameters: - name: API_KEY description: API KEY provided by Vendor in: path required: true schema: type: string - name: from_id description: Get review after selected id Eg.12345 in: query required: false schema: type: string - name: from_date description: Get review after selected date Eg.2017-11-03 in: query required: false schema: type: string - name: updated_date description: Get data updated/created after selected date Eg.2017-11-03 in: query required: false schema: type: string - name: count description: Number of reviews to return eg.10 in: query required: false schema: type: string - name: page description: Page number to return reviews for eg.2 in: query required: false schema: type: string - name: likes description: Add likes in result Eg.0/1. 0 is default in: query required: false schema: type: string - name: custom_questions description: Add custom questions in result Eg.0/1. 0 is default in: query required: false schema: type: string - name: sort description: "Responses can be sorted by: date/stars/like/sentiment/buyer/picture/response" in: query required: false schema: type: string - name: sort_order description: Sorting order. Option is asc/desc in: query required: false schema: type: string - name: stars description: Star rating for the product (1 to 5) Eg.5 in: query required: false schema: type: string - name: stars_sorting description: Options are greater/less/equal. Default is equal in: query required: false schema: type: string - name: post_type description: Options are email/import/website/line/inline_form. You can use multiple by comma separated. Default is null in: query required: false schema: type: string - name: review_type description: Options are site/product/all. Default is all in: query required: false schema: type: string - name: product_id description: Product id. Default is all in: query required: false schema: type: string - name: group description: Group status are true/false. Default is false in: query required: false schema: type: string - name: group_name description: Group name. Default is blank in: query required: false schema: type: string - name: label description: Label name. Default is blank. Comma seprated for multiple in: query required: false schema: type: string responses: "200": description: View all review content: application/json: schema: $ref: "#/components/schemas/ViewOnlyReviewsResponse" "401": description: Invalid/Expired Access Token content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" "402": description: No action specified content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" "403": description: Missing API Key content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" "404": description: Action not found "405": description: Product not found. zero product "406": description: Review not found. zero review content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" "407": description: Product id is not valid "408": description: Review id is not valid "409": description: Stars rating is not valid "410": description: Unauthorized Access "411": description: Something wrong with account configuration. Please contact U-KOMI Support. "/reviews/{API_KEY}/review_with_orders": post: tags: - Reviews summary: Retrieve all reviews with orders operationId: all-reviews-with-order description: > Call api for all review and Pass data in given format to get selected review with orders parameters: - name: API_KEY description: API KEY provided by Vendor in: path required: true schema: type: string requestBody: content: application/json: schema: $ref: "#/components/schemas/ViewReviewObject" description: Review param to fetch review according to it form the U-KOMI system required: true responses: "200": description: View all review content: application/json: schema: $ref: "#/components/schemas/ViewAllReviewWithOrderResponse" "401": description: Invalid/Expired Access Token content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" "402": description: No action specified content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" "403": description: Missing API Key content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" "404": description: Action not found "405": description: Product not found. zero product "406": description: Review not found. zero review content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" "407": description: Product id is not valid "408": description: Review id is not valid "409": description: Stars rating is not valid "/reviews/{API_KEY}/groups_review_summary": post: tags: - Reviews summary: Retrieve review summary for given groups operationId: groups-review-summary description: | Call api to retrieve review summary for group(s) with filter parameters: - name: API_KEY description: API KEY provided by Vendor in: path required: true schema: type: string requestBody: content: application/json: schema: $ref: "#/components/schemas/GroupReviewSummaryParam" description: Groups param to fetch review summary form the U-KOMI system required: true responses: "200": description: Review summary for groups content: application/json: schema: $ref: "#/components/schemas/ReviewSummaryResponse" "403": description: Groups limit exceeded. With filter merge 0, max 1000 groups are allowed. content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" "/reviews/{API_KEY}/customers_review_summary": post: tags: - Reviews summary: Retrieve review summary for given customer id operationId: customers-review-summary description: | Call api to retrieve review summary for customer(s) with filter parameters: - name: API_KEY description: API KEY provided by Vendor in: path required: true schema: type: string requestBody: content: application/json: schema: $ref: "#/components/schemas/CustomerReviewSummaryParam" description: Customer ids param to fetch review summary form the U-KOMI system required: true responses: "200": description: Review summary for Customers content: application/json: schema: $ref: "#/components/schemas/CustomerReviewSummaryResponse" "401": description: Invalid/Expired Access Token content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" "403": description: Customer id limit exceeded. With filter merge 0, max 1000 customers are allowed. content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" "/reviews/{API_KEY}/{review_type}/filtered_review_summary": post: tags: - Reviews summary: Retrieve filtered review summary operationId: filtered_review_summary description: > Call api with filter by passing API Key and review type you can receive filtered review summary parameters: - name: API_KEY description: API KEY provided by Vendor in: path required: true schema: type: string - name: review_type description: Review type (site/product/all) in: path required: true schema: type: string requestBody: content: application/json: schema: $ref: "#/components/schemas/FilterForReviewSummaryParam" description: Filter param to fetch review summary form the U-KOMI system required: true responses: "200": description: View all review summary content: application/json: schema: $ref: "#/components/schemas/ReviewSummaryResponse" "406": description: No reviews found. "410": description: Review type specified not found. "/reviews/{API_KEY}/{review_type}/review_summary": get: tags: - Reviews summary: Retrieve review summary operationId: review_by_review_type description: | By passing API Key and review type you can receive review summary parameters: - name: API_KEY description: API KEY provided by Vendor in: path required: true schema: type: string - name: review_type description: Review type (site/product/all) in: path required: true schema: type: string - name: product_id description: Product id. Default is all in: query required: false schema: type: string - name: group description: Group status are true/false. Default is false in: query required: false schema: type: string - name: group_name description: Group name. Default is blank in: query required: false schema: type: string - name: ai_summary description: Include AI-generated summary in the response. Options are 0/1. Default is 0 (exclude summary). in: query required: false schema: type: string - name: q_n_a_summary description: Include Q&A summary in the response. Options are 0/1. Default is 0 (exclude summary). in: query required: false schema: type: string - name: rating_breakdown description: Include rating breakdown in the response. Options are 0/1. Default is 0 (exclude breakdown). in: query required: false schema: type: string responses: "200": description: View all review summary content: application/json: schema: $ref: "#/components/schemas/ReviewSummaryResponse" "406": description: No reviews found. "410": description: Review type specified not found. "/reviews/{API_KEY}/{review_id}/review": get: tags: - Reviews summary: Retrieve selected review operationId: review_by_id description: | Call api with review id to get selected review parameters: - name: API_KEY description: API KEY provided by Vendor in: path required: true schema: type: string - name: access_token description: ACCESS TOKEN provided by API in: query required: true schema: type: string - name: review_id description: Review id in: path required: true schema: type: string - name: deleted description: 'Include unpublished reviews Eg.0/1. Each entry of review_images_with_status is {"url": ..., "deleted": 0|1}; deleted=1 also returns unpublished photos/videos there.' in: query required: false schema: type: string responses: "200": description: View all review content: application/json: schema: $ref: "#/components/schemas/ViewReviewResponse" "401": description: Invalid/Expired Access Token content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" "402": description: No action specified content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" "403": description: Missing API Key content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" "404": description: Action not found "405": description: Product not found. zero product "406": description: Review not found. zero review "410": description: Unauthorized Access "411": description: Something wrong with account configuration. Please contact U-KOMI Support. "/reviews/{API_KEY}/{product_id}/product": get: tags: - Reviews summary: Retrieve reviews of selected products operationId: product/review description: | Call api get selected product's reviews parameters: - name: API_KEY description: API KEY provided by Vendor in: path required: true schema: type: string - name: access_token description: ACCESS TOKEN provided by API in: query required: true schema: type: string - name: product_id description: ID of the product to retrieve reviews in: path required: true schema: type: string - name: count description: Number of reviews to return eg.10 in: query required: false schema: type: string - name: page description: Page number to return reviews for eg.2 in: query required: false schema: type: string - name: sort description: "Responses can be sorted by: date/stars/like/sentiment/buyer/picture/response" in: query required: false schema: type: string - name: sort_order description: Sorting order. Option is asc/desc in: query required: false schema: type: string - name: stars description: Star rating for the product (1 to 5) Eg.5 in: query required: false schema: type: string - name: stars_sorting description: Options are greater/less/equal. Default is equal in: query required: false schema: type: string - name: customer_id description: Filter reviews by customer ID. in: query required: false schema: type: string responses: "200": description: View all review content: application/json: schema: $ref: "#/components/schemas/ViewAllProductReviewResponse" "401": description: Invalid/Expired Access Token content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" "402": description: No action specified content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" "403": description: Missing API Key content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" "404": description: Action not found "405": description: Product not found. zero product "406": description: Review not found. zero review "407": description: Product id is not valid "409": description: Stars rating is not valid "410": description: Unauthorized Access "411": description: Something wrong with account configuration. Please contact U-KOMI Support. "/inline_review_form_token/{API_KEY}/get": post: tags: - Reviews summary: Get inline review form token from U-KOMI system operationId: inline-review-form-token description: | Pass order_ids and product_ids in given format to get verification token parameters: - name: API_KEY description: API KEY provided by Vendor in: path required: true schema: type: string requestBody: content: application/json: schema: $ref: "#/components/schemas/InlineReviewFormTokenRequest" description: Order ID and Product ID that needs to be get verification token from the U-KOMI system required: true responses: "200": description: All/at least one verification toke received from given data. content: application/json: schema: $ref: "#/components/schemas/InlineReviewFormTokenResponse" "401": description: Invalid/Expired Access Token content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" "402": description: No action specified content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" "403": description: Missing API Key content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" "405": description: No order data received content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" "406": description: Invalid Order data passed content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" "/products/{API_KEY}/view": post: tags: - Products summary: Retrieve Products operationId: products/retrieve description: | Just call api with out passing any data and actions parameters: - name: API_KEY description: API KEY provided by Vendor in: path required: true schema: type: string requestBody: content: application/json: schema: $ref: "#/components/schemas/ViewProductObject" description: Product param to fetch product according to it form the U-KOMI system required: true responses: "200": description: View all products content: application/json: schema: $ref: "#/components/schemas/ViewProductResponse" "401": description: Invalid/Expired Access Token content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" "402": description: No action specified content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" "403": description: Unauthorized Access content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" "404": description: No record found content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" "406": description: Passed param from_date or updated_date is invalid. Accepted format is Y-m-d. content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" "408": description: Something wrong with account configuration. Please contact U-KOMI Support. content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" "/products/{API_KEY}/view_basic": post: tags: - Products summary: Retrieve Products operationId: products/retrieve/basic description: | Just call api with out passing any data and actions parameters: - name: API_KEY description: API KEY provided by Vendor in: path required: true schema: type: string requestBody: content: application/json: schema: $ref: "#/components/schemas/ViewBasicProductObject" description: Product param to fetch product according to it form the U-KOMI system required: true responses: "200": description: View all products content: application/json: schema: $ref: "#/components/schemas/ViewProductBasicResponse" "401": description: Invalid/Expired Access Token content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" "402": description: No action specified content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" "403": description: Unauthorized Access content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" "404": description: No record found content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" "406": description: Passed param from_date or updated_date is invalid. Accepted format is Y-m-d. content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" "408": description: Something wrong with account configuration. Please contact U-KOMI Support. content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" "/products/{API_KEY}/product": post: tags: - Products summary: Retrieve product details by product ID operationId: products/retrieve/single description: > Pass a single product_id or a comma-separated list of product_ids to fetch product details. parameters: - name: API_KEY description: API KEY provided by Vendor in: path required: true schema: type: string requestBody: content: application/json: schema: $ref: "#/components/schemas/RetrieveProductObject" description: Product retrieval parameters (access_token and product_id) required: true responses: "200": description: Retrieve product details content: application/json: schema: $ref: "#/components/schemas/RetrieveProductResponse" "401": description: Invalid/Expired Access Token content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" "402": description: No action specified content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" "403": description: Unauthorized Access content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" "404": description: Product ID not specified or Invalid Product ID content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" "408": description: Something wrong with account configuration. Please contact U-KOMI Support. content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" "429": description: Too many requests. Please try again later. content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" "/products/{API_KEY}/create": post: tags: - Products summary: Create product in U-KOMI system operationId: products/create description: | Pass product data in given format to create product parameters: - name: API_KEY description: API KEY provided by Vendor in: path required: true schema: type: string requestBody: content: application/json: schema: $ref: "#/components/schemas/CreateProducts" description: Products object that needs to be added to the U-KOMI system required: true responses: "200": description: Create Product Status content: application/json: schema: $ref: "#/components/schemas/CreateProductResponse" "401": description: Invalid/Expired Access Token content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" "402": description: No action specified content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" "403": description: Missing API Key content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" "405": description: No product data received content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" "406": description: Invalid product data passed content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" "/products/{API_KEY}/{product_id}/{group_status}/review_summary": get: tags: - Products summary: get product review summary operationId: review_summary description: > By passing API Key and product id you can receive product review summary which can be used for Rich Snippets parameters: - name: API_KEY description: API KEY provided by Vendor in: path required: true schema: type: string - name: product_id in: path description: ID of the product to retrieve reviews required: true schema: type: string - name: group_status in: path description: If product is belong to group and you want to get whole group data eg.true/false required: true schema: type: string responses: "200": description: Review Summary for Given Product ID content: application/json: schema: $ref: "#/components/schemas/ReviewSummaryResponse" "401": description: Invalid API Key content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" "402": description: No action specified content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" "403": description: Missing API Key content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" "404": description: Invalid Product ID or Product ID not specified content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" "/products/{API_KEY}/{product_id}/{review_code}/review_meta": get: tags: - Products summary: get review title and description in og:title and og:description meta tags for given review_code and product_id operationId: review_meta description: > By passing API Key, product id and review_code you can receive product review in meta tags. parameters: - name: API_KEY description: API KEY provided by Vendor in: path required: true schema: type: string - name: product_id in: path description: ID of the product to retrieve reviews required: true schema: type: integer - name: review_code in: path description: review_code from Review URL required: true schema: type: string responses: "200": description: Review Meta for Given Product ID and Review Code content: application/json: schema: $ref: "#/components/schemas/ReviewMetaResponse" "401": description: Invalid API Key content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" "402": description: No action specified content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" "403": description: Missing API Key content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" "404": description: Invalid Product ID or Product ID not specified content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" "405": description: Invalid Review Code content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" "/blacklist_products/{API_KEY}/view": post: tags: - Products summary: Retrieve Blacklisted Products operationId: blacklisted_products/retrieve description: | Just call api with out passing any data and actions parameters: - name: API_KEY description: API KEY provided by Vendor in: path required: true schema: type: string requestBody: content: application/json: schema: $ref: "#/components/schemas/ViewBlacklistProductObject" description: Product param to fetch product according to it form the U-KOMI system required: true responses: "200": description: View all blacklisted products content: application/json: schema: $ref: "#/components/schemas/ViewBlacklistProductResponse" "401": description: Invalid/Expired Access Token content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" "402": description: No action specified content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" "403": description: Unauthorized Access content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" "404": description: No record found content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" "406": description: Invalid product id passed content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" "407": description: Wrong action specified content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" "/blacklist_products/{API_KEY}/create": post: tags: - Products summary: Add blacklist product in U-KOMI system operationId: blacklisted_products/create description: | Pass product id in given format to add blacklisted product parameters: - name: API_KEY description: API KEY provided by Vendor in: path required: true schema: type: string requestBody: content: application/json: schema: $ref: "#/components/schemas/CreateBlacklistProducts" description: Product ids that needs to be added to the U-KOMI system required: true responses: "200": description: Create Blacklist Product Status content: application/json: schema: $ref: "#/components/schemas/CreateBlacklistProductResponse" "401": description: Invalid/Expired Access Token content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" "402": description: No action specified content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" "403": description: Missing API Key content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" "405": description: No product data received content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" "406": description: Invalid product data passed content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" "/blacklist_products/{API_KEY}/delete": post: tags: - Products summary: Delete blacklist product in U-KOMI system operationId: blacklisted_products/delete description: | Pass product id in given format to delete blacklisted product parameters: - name: API_KEY description: API KEY provided by Vendor in: path required: true schema: type: string requestBody: content: application/json: schema: $ref: "#/components/schemas/CreateBlacklistProducts" description: Blacklist product ids that needs to be delete to the U-KOMI system required: true responses: "200": description: Delete Product Status content: application/json: schema: $ref: "#/components/schemas/CreateBlacklistProductResponse" "401": description: Invalid/Expired Access Token content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" "402": description: No action specified content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" "403": description: Missing API Key content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" "405": description: No product data received content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" "406": description: Invalid product data passed content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" "/orders/{API_KEY}/": post: tags: - Orders summary: Retrieve Orders operationId: order/retrieve description: | Just call api with out passing any data and actions parameters: - name: API_KEY description: API KEY provided by Vendor in: path required: true schema: type: string requestBody: content: application/json: schema: $ref: "#/components/schemas/ViewOrderObject" description: Order param to fetch order according to it form the U-KOMI system required: true responses: "200": description: View all Orders content: application/json: schema: $ref: "#/components/schemas/ViewOrderResponse" "401": description: Invalid/Expired Access Token content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" "402": description: No action specified content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" "403": description: Missing API Key content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" "/orders/{API_KEY}/create": post: tags: - Orders summary: Create order in U-KOMI system operationId: orders/create description: | Pass order data in given format to create order Orders that already exist in U-KOMI are skipped, and so are their products. parameters: - name: API_KEY description: API KEY provided by Vendor in: path required: true schema: type: string requestBody: content: application/json: schema: $ref: "#/components/schemas/CreateOrder" description: Order object that needs to be added to the U-KOMI system required: true responses: "200": description: Create Order Status content: application/json: schema: $ref: "#/components/schemas/CreateOrderResponse" "401": description: Invalid/Expired Access Token content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" "402": description: No action specified content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" "403": description: Missing API Key content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" "405": description: No order data received content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" "406": description: Invalid Order data passed content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" "/orders/{API_KEY}/cancel": post: tags: - Orders summary: Cancel order in U-KOMI system operationId: orders/cancel description: >- This call stops U-KOMI sending out mails after order for the specific order and product. If you don't specify which product in the order then MAPS are not sent for all products in that order. parameters: - name: API_KEY description: API KEY provided by Vendor in: path required: true schema: type: string requestBody: content: application/json: schema: $ref: "#/components/schemas/CancelOrderObject" description: Cancel Order object containing order_id and product_ids that needs to be cancelled U-KOMI system required: true responses: "200": description: Cancel Order Status content: application/json: schema: $ref: "#/components/schemas/CancelOrderResponse" "401": description: Invalid/Expired Access Token content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" "402": description: No action specified content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" "403": description: Missing API Key content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" "405": description: No order data received content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" "406": description: Invalid Order data passed content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" "/groups/{API_KEY}/": post: tags: - Groups summary: Retrieve all groups of account operationId: retrieve description: | Just call api with out passing any data and actions parameters: - name: API_KEY description: API KEY provided by Vendor in: path required: true schema: type: string requestBody: content: application/json: schema: $ref: "#/components/schemas/ViewAllGroupObject" description: Group object that needs to be added to the U-KOMI system required: true responses: "200": description: View all groups content: application/json: schema: $ref: "#/components/schemas/ViewAllGroupResponse" "401": description: Invalid/Expired Access Token content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" "402": description: No action specified content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" "403": description: Missing API Key content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" "406": description: Passed param from_date or updated_date is invalid. Accepted format is Y-m-d. content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" "/groups/{API_KEY}/create": post: tags: - Groups summary: Create group in U-KOMI system operationId: groups/create description: | Pass group data in given format to create group parameters: - name: API_KEY description: API KEY provided by Vendor in: path required: true schema: type: string requestBody: content: application/json: schema: $ref: "#/components/schemas/CreatGroupObject" description: Group name that needs to be added to the U-KOMI system required: true responses: "200": description: Create group content: application/json: schema: $ref: "#/components/schemas/CreatGroupResponse" "401": description: Invalid/Expired Access Token content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" "402": description: No action specified content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" "403": description: Missing API Key content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" "405": description: No group name received content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" "406": description: Group name is already exist content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" "/groups/{API_KEY}/products": post: tags: - Groups summary: Add/ Remove Products form groups in U-KOMI system operationId: manage/product description: | Pass order data in given format to add/remove product parameters: - name: API_KEY description: API KEY provided by Vendor in: path required: true schema: type: string requestBody: content: application/json: schema: $ref: "#/components/schemas/ProductGroupsObject" description: Product id that needs to be added/remove to groups base on action in the U-KOMI system required: true responses: "200": description: Add/remove product content: application/json: schema: $ref: "#/components/schemas/ProductGroupsResponse" "401": description: Invalid/Expired Access Token content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" "402": description: No action specified content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" "403": description: Missing API Key content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" "405": description: Invalid Group Name passed content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" "406": description: Group Name does not exist content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" "407": description: Invalid action for product content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" "/groups/{API_KEY}/view": post: tags: - Groups summary: Retrieve products for specific group operationId: group/view description: | By passing group name you can retrieve product list to that group parameters: - name: API_KEY description: API KEY provided by Vendor in: path required: true schema: type: string requestBody: content: application/json: schema: $ref: "#/components/schemas/ViewGroupsObject" description: By passing group name you can retrieve product list to that group required: true responses: "200": description: Get all products belong to passed group name content: application/json: schema: $ref: "#/components/schemas/ViewGroupsResponse" "401": description: Invalid API Key content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" "402": description: No action specified content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" "403": description: Missing API Key content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" "405": description: Invalid Group Name passed content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" "406": description: Group Name does not exist content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" "407": description: Group done not contains any products content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" "/groups/{API_KEY}/delete": post: tags: - Groups summary: Delete a group operationId: groups/delete description: | Pass group data in given format to delete group parameters: - name: API_KEY description: API KEY provided by Vendor in: path required: true schema: type: string requestBody: content: application/json: schema: $ref: "#/components/schemas/DeleteGroupObject" description: Group name that needs to be deleted to the U-KOMI system required: true responses: "200": description: Delete group content: application/json: schema: $ref: "#/components/schemas/DeleteGroupResponse" "401": description: Invalid/Expired Access Token content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" "402": description: No action specified content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" "403": description: Missing API Key content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" "405": description: No group name received content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" "406": description: Group name does not exist content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" "407": description: Group contains products content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" "/questions/{API_KEY}": get: tags: - Q&A summary: Retrieve all Question and Answer operationId: allquestion description: | Call api to get all question and answer parameters: - name: API_KEY description: API KEY provided by Vendor in: path required: true schema: type: string - name: access_token description: ACCESS TOKEN provided by API in: query required: true schema: type: string - name: grab_all description: "Get all questions. Options: 1/0. Include Bazora: 1, otherwise No. The default is 0." in: query required: false schema: type: string - name: from_date description: Get questions after selected date Eg.2017-11-03 in: query required: false schema: type: string - name: updated_date description: Get questions updated/created after selected date Eg.2017-11-03 in: query required: false schema: type: string - name: count description: Number of questions to return eg.10 in: query required: false schema: type: string - name: page description: Page number to return questions for eg.2 in: query required: false schema: type: string - name: label description: Label name. Default is blank. Comma seprated for multiple in: query required: false schema: type: string - name: published description: "Get published/unpublished questions. eg.0 for unpublished, 1 for published, all. Default value is all " in: query required: false schema: type: string responses: "200": description: View all review content: application/json: schema: $ref: "#/components/schemas/ViewAllQuestionResponse" "401": description: Invalid API Key content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" "402": description: No action specified content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" "403": description: Missing API Key content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" "406": description: Questions and answer is not found content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" "407": description: Wrong action specified "408": description: Something wrong with account configuration "410": description: Unauthorized Access "411": description: Something wrong with account configuration. Please contact U-KOMI Support. "/questions/{API_KEY}/{product_id}": get: tags: - Q&A summary: Retrieve selected question base on product id operationId: questions description: | Call api to get all question of selected product id parameters: - name: API_KEY description: API KEY provided by Vendor in: path required: true schema: type: string - name: access_token description: ACCESS TOKEN provided by API in: query required: true schema: type: string - name: product_id description: ID of the product to retrieve reviews in: path required: true schema: type: string responses: "200": description: View all question and answer for selected products content: application/json: schema: $ref: "#/components/schemas/ViewQuestionResponse" "401": description: Invalid/Expired Access Token content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" "402": description: No action specified content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" "403": description: Missing API Key content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" "404": description: Product ID not specified "405": description: Product id is not valid "406": description: Questions and answer is not found for this product "407": description: Wrong action specified "408": description: Something wrong with account configuration "410": description: Unauthorized Access "411": description: Something wrong with account configuration. Please contact U-KOMI Support. "/questions/{API_KEY}/{product_id}/count": get: tags: - Q&A summary: Retrieve question count base on product id operationId: questions_count description: | Call api to get question count of selected product id parameters: - name: API_KEY description: API KEY provided by Vendor in: path required: true schema: type: string - name: product_id description: ID of the product to retrieve reviews in: path required: true schema: type: string responses: "200": description: View all question and answer for selected products content: application/json: schema: $ref: "#/components/schemas/ViewQuestionCountResponse" "401": description: Invalid/Expired Access Token content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" "402": description: No action specified content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" "403": description: Missing API Key content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" "404": description: Product ID not specified "405": description: Product id is not valid "407": description: Wrong action specified "408": description: Something wrong with account configuration "/reviews/{API_KEY}/{review_id}/review_basic": get: tags: - Reviews summary: Retrieve selected review (basic) operationId: review_by_id_basic description: > Retrieve a single review by its id. The basic response omits reviewer personal information such as name and email. parameters: - name: API_KEY description: API KEY provided by Vendor in: path required: true schema: type: string - name: review_id description: Review id in: path required: true schema: type: string responses: "200": description: Selected review content: application/json: schema: $ref: "#/components/schemas/ViewReviewBasicResponse" "403": description: Missing API Key content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" "406": description: Review not found "408": description: Review id is not valid "/reviews/{API_KEY}/{product_id}/product_basic": get: tags: - Reviews summary: Retrieve reviews of selected product (basic) operationId: product_review_basic description: > Retrieve the reviews of a product. The basic response omits reviewer personal information such as name and email. parameters: - name: API_KEY description: API KEY provided by Vendor in: path required: true schema: type: string - name: product_id description: ID of the product to retrieve reviews in: path required: true schema: type: string - name: count description: Number of reviews to return eg.10 in: query required: false schema: type: string - name: page description: Page number to return reviews for eg.2 in: query required: false schema: type: string - name: sort description: "Responses can be sorted by: date/stars/like/sentiment/buyer/picture/response" in: query required: false schema: type: string - name: sort_order description: Sorting order. Option is asc/desc in: query required: false schema: type: string - name: stars description: Star rating for the product (1 to 5) Eg.5 in: query required: false schema: type: string - name: stars_sorting description: Options are greater/less/equal. Default is equal in: query required: false schema: type: string responses: "200": description: Product reviews content: application/json: schema: $ref: "#/components/schemas/ViewAllProductReviewBasicResponse" "403": description: Missing API Key content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" "405": description: Product not found "406": description: Review not found "407": description: Product id is not valid "409": description: Stars rating is not valid "/reviews/{API_KEY}/review_with_orders_basic": post: tags: - Reviews summary: Retrieve reviews with order details (basic) operationId: review_with_orders_basic description: > Retrieve reviews together with their related order details. The basic response omits reviewer and buyer personal information such as name and email. parameters: - name: API_KEY description: API KEY provided by Vendor in: path required: true schema: type: string requestBody: content: application/json: schema: $ref: "#/components/schemas/ReviewWithOrdersBasicObject" description: Optional filters for the reviews to return responses: "200": description: Reviews with order details content: application/json: schema: $ref: "#/components/schemas/ReviewWithOrdersBasicResponse" "403": description: Missing API Key content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" "406": description: Review not found, or a passed date is invalid. Accepted format is Y-m-d. "409": description: Stars rating is not valid "/reviews/{API_KEY}/{review_id}/like": post: tags: - Reviews summary: Like or dislike a review operationId: review_like description: > Record a like or a dislike for a review. Dislikes are only accepted when dislikes are enabled for your account. parameters: - name: API_KEY description: API KEY provided by Vendor in: path required: true schema: type: string - name: review_id description: Review id in: path required: true schema: type: string requestBody: content: application/json: schema: $ref: "#/components/schemas/ReviewLikeObject" description: Vote details responses: "200": description: Updated like state for the review content: application/json: schema: $ref: "#/components/schemas/ReviewLikeResponse" "400": description: Invalid request parameter content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" "401": description: Invalid API Key content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" "403": description: Dislikes are not enabled for this account "404": description: Review not found "429": description: Too many requests. Please try again shortly. "/reviews/{API_KEY}/{review_id}/likes": get: tags: - Reviews summary: Retrieve like count for a review operationId: review_likes description: > Retrieve the like (and dislike) count for a review. Pass user_identifier to also receive that user's current vote. parameters: - name: API_KEY description: API KEY provided by Vendor in: path required: true schema: type: string - name: review_id description: Review id in: path required: true schema: type: string - name: user_identifier description: Optional identifier of the current user, to return that user's vote in: query required: false schema: type: string responses: "200": description: Like state for the review content: application/json: schema: $ref: "#/components/schemas/ReviewLikeResponse" "400": description: Invalid request parameter content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" "401": description: Invalid API Key content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" "404": description: Review not found "/reviews/{API_KEY}/likes": get: tags: - Reviews summary: Retrieve like counts for multiple reviews operationId: reviews_likes_batch description: > Retrieve the like (and dislike) counts for several reviews at once. Pass review_ids as a comma separated list (up to 100). parameters: - name: API_KEY description: API KEY provided by Vendor in: path required: true schema: type: string - name: review_ids description: Comma separated list of review ids (up to 100) eg.abc123,def456 in: query required: true schema: type: string - name: user_identifier description: Optional identifier of the current user, to return that user's vote in: query required: false schema: type: string responses: "200": description: Like states for the requested reviews content: application/json: schema: $ref: "#/components/schemas/ReviewLikesListResponse" "400": description: Missing or invalid review_ids content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" "401": description: Invalid API Key content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" "/questions/{API_KEY}/all_questions_basic": get: tags: - Q&A summary: Retrieve all questions and answers (basic) operationId: all_questions_basic description: > Retrieve all questions and answers. The basic response omits the questioner's email. parameters: - name: API_KEY description: API KEY provided by Vendor in: path required: true schema: type: string - name: grab_all description: "Get all questions. Options: 1/0. Include community questions: 1, otherwise No. The default is 0." in: query required: false schema: type: string - name: from_date description: Get questions after selected date Eg.2017-11-03 in: query required: false schema: type: string - name: updated_date description: Get questions updated/created after selected date Eg.2017-11-03 in: query required: false schema: type: string - name: count description: Number of questions to return eg.10 in: query required: false schema: type: string - name: page description: Page number to return questions for eg.2 in: query required: false schema: type: string - name: label description: Label name. Default is blank. Comma seprated for multiple in: query required: false schema: type: string - name: published description: "Get published/unpublished questions. eg.0 for unpublished, 1 for published, all. Default value is all " in: query required: false schema: type: string responses: "200": description: All questions and answers content: application/json: schema: $ref: "#/components/schemas/ViewAllQuestionBasicResponse" "403": description: Missing API Key content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" "406": description: Questions and answer is not found, or a passed date is invalid. Accepted format is Y-m-d. "/questions/{API_KEY}/{product_id}/questions_basic": get: tags: - Q&A summary: Retrieve questions of a product (basic) operationId: product_questions_basic description: > Retrieve the questions and answers of a product. The basic response omits the questioner's email. parameters: - name: API_KEY description: API KEY provided by Vendor in: path required: true schema: type: string - name: product_id description: ID of the product to retrieve questions in: path required: true schema: type: string responses: "200": description: Questions and answers for the product content: application/json: schema: $ref: "#/components/schemas/ViewQuestionBasicResponse" "403": description: Missing API Key content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" "404": description: Product ID not specified "405": description: Product id is not valid "406": description: Questions and answer is not found for this product "/questions/{API_KEY}/{question_id}/like": post: tags: - Q&A summary: Like or dislike a question operationId: question_like description: > Record a like or a dislike for a question. Dislikes are only accepted when dislikes are enabled for your account. parameters: - name: API_KEY description: API KEY provided by Vendor in: path required: true schema: type: string - name: question_id description: Question id in: path required: true schema: type: string requestBody: content: application/json: schema: $ref: "#/components/schemas/QuestionLikeObject" description: Vote details responses: "200": description: Updated like state for the question content: application/json: schema: $ref: "#/components/schemas/QuestionLikeResponse" "400": description: Invalid request parameter content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" "401": description: Invalid API Key content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" "403": description: Dislikes are not enabled for this account "404": description: Question not found "429": description: Too many requests. Please try again shortly. "/questions/{API_KEY}/{question_id}/likes": get: tags: - Q&A summary: Retrieve like count for a question operationId: question_likes description: > Retrieve the like (and dislike) count for a question. Pass user_identifier to also receive that user's current vote. parameters: - name: API_KEY description: API KEY provided by Vendor in: path required: true schema: type: string - name: question_id description: Question id in: path required: true schema: type: string - name: user_identifier description: Optional identifier of the current user, to return that user's vote in: query required: false schema: type: string responses: "200": description: Like state for the question content: application/json: schema: $ref: "#/components/schemas/QuestionLikeResponse" "400": description: Invalid request parameter content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" "401": description: Invalid API Key content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" "404": description: Question not found "/questions/{API_KEY}/likes": get: tags: - Q&A summary: Retrieve like counts for multiple questions operationId: questions_likes_batch description: > Retrieve the like (and dislike) counts for several questions at once. Pass question_ids as a comma separated list (up to 100). parameters: - name: API_KEY description: API KEY provided by Vendor in: path required: true schema: type: string - name: question_ids description: Comma separated list of question ids (up to 100) eg.q1,q2,q3 in: query required: true schema: type: string - name: user_identifier description: Optional identifier of the current user, to return that user's vote in: query required: false schema: type: string responses: "200": description: Like states for the requested questions content: application/json: schema: $ref: "#/components/schemas/QuestionLikesListResponse" "400": description: Missing or invalid question_ids content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" "401": description: Invalid API Key content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" "/v1/{API_KEY}/review_form_fields": post: tags: - Reviews summary: Retrieve review form fields operationId: review_form_fields description: > Retrieve the fields and labels needed to render a review form for a product. parameters: - name: API_KEY description: API KEY provided by Vendor in: path required: true schema: type: string requestBody: content: application/json: schema: $ref: "#/components/schemas/ReviewFormFieldsObject" description: Product to build the form for required: true responses: "200": description: Review form configuration and fields content: application/json: schema: $ref: "#/components/schemas/ReviewFormFieldsResponse" "400": description: Missing API Key or product_id content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" "401": description: Invalid API Key content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" "/v1/{API_KEY}/review_submit": post: tags: - Reviews summary: Submit a review operationId: review_submit description: | Submit a review. A verification email is sent to confirm the review. parameters: - name: API_KEY description: API KEY provided by Vendor in: path required: true schema: type: string requestBody: content: application/json: schema: $ref: "#/components/schemas/ReviewSubmitObject" description: Review to submit required: true responses: "200": description: Review received content: application/json: schema: $ref: "#/components/schemas/ReviewSubmitResponse" "400": description: Missing API Key content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" "401": description: Invalid API Key content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" "409": description: A review submission for this order was already received today "422": description: One or more fields are invalid content: application/json: schema: $ref: "#/components/schemas/ReviewSubmitFieldErrorResponse" "/orders/{API_KEY}/customer_order": post: tags: - Orders summary: Retrieve a customer's orders operationId: customer_order description: | Retrieve a customer's orders along with their products and, where a review is still pending, a review token. Identify the customer by customer_id or email; if both are passed, customer_id is used. Each product line also returns is_review_submitted, is_cancelled and reviewed_at. Bulk mode: send customer_ids (up to 50) to get the orders of several customers in one call. The response then has customers instead of orders, limit applies per customer and page is not used. Send order_ids (up to 100) to return only those orders of the customer; limit and page are then ignored. parameters: - name: API_KEY description: API KEY provided by Vendor in: path required: true schema: type: string requestBody: content: application/json: schema: $ref: "#/components/schemas/CustomerOrderObject" description: Access token and the customer to look up required: true responses: "200": description: Customer orders content: application/json: schema: oneOf: - $ref: "#/components/schemas/CustomerOrderResponse" - $ref: "#/components/schemas/CustomerOrderBulkResponse" "401": description: Invalid API Key content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" "403": description: Unauthorized Access content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" "405": description: No customer_id or email received content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" "406": description: "Invalid JSON body, or invalid customer_ids or order_ids" content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" "/store_badges/{API_KEY}/view": get: tags: - Store Badges summary: Retrieve store badges operationId: store_badges_view description: > By passing your API Key you can retrieve the badges the store publicly displays. Badge name and description are returned in the account's configured language and fall back to Japanese when no translation exists. Returns an empty data array when the store has no public badges. parameters: - name: API_KEY description: API KEY provided by Vendor in: path required: true schema: type: string responses: "200": description: Store badges content: application/json: schema: $ref: "#/components/schemas/StoreBadgesResponse" "401": description: Invalid API Key content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" "402": description: No action specified content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" "403": description: Unauthorized Access. API Key not provided content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" "405": description: Account is disabled content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" "408": description: Something wrong with account configuration. Please contact U-KOMI Support content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" "410": description: Account has expired content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" "/faqs/{API_KEY}": get: tags: - FAQ summary: Retrieve published FAQs operationId: faqs_view description: > Returns the published FAQs (categories, questions, answers) for the account. If the FAQ feature is not available or nothing is published, the response is still 200 with data.enabled = false. When rich snippets are enabled, snippet contains a ready-to-use FAQPage JSON-LD script tag. parameters: - name: API_KEY description: API KEY provided by Vendor in: path required: true schema: type: string - name: lang description: Content language (e.g. ja, en). Translations are returned only when FAQ translation is enabled. Defaults to the account language. in: query required: false schema: type: string - name: category description: Limit the JSON-LD (snippet) to one category, by custom_id or title. Use uncategorized for FAQs without a category. in: query required: false schema: type: string responses: "200": description: Published FAQs content: application/json: schema: $ref: "#/components/schemas/FaqsResponse" "401": description: Invalid API Key content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" "403": description: Unauthorized Access. API Key not provided content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" "405": description: Account is disabled content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" "408": description: Something wrong with account configuration. Please contact U-KOMI Support content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" "410": description: Account has expired content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" servers: - url: https://api.u-komi.com components: schemas: VisualUgcAlbumsObject: type: object required: - access_token properties: access_token: type: string description: "Access token. May also be sent as an 'Authorization: Bearer ' header." example: YOUR_ACCESS_TOKEN album_type: type: string description: "Filter by album type: custom / product / official / user. Omit to return all." example: "" count: type: integer description: Items per page. Default 10, max 100. example: 10 page: type: integer description: Page number. Default 1. example: 1 from_date: type: string description: Filter by created_at (>=). example: "" updated_date: type: string description: Filter by updated_at (>=). example: "" VisualUgcAlbumMediaObject: type: object required: - access_token properties: access_token: type: string description: "Access token. May also be sent as an 'Authorization: Bearer ' header." example: YOUR_ACCESS_TOKEN source: type: string description: "Filter by source: instagram / review_picture / upload / tiktok / twitter / youtube. Omit to return all." example: "" rights_status: type: string description: "Filter by rights status: approved / pending / rejected. Omit to return all." example: "" sort: type: string description: "Sort key: date / likes. Default is date." example: date sort_order: type: string description: "Sort direction: asc / desc. Default is desc." example: desc cursor: type: string description: Cursor for the next page (next_cursor from a previous response). Omit for the first page. example: "" count: type: integer description: Items per page. Default 10, max 100. example: 10 VisualUgcGalleriesObject: type: object required: - access_token properties: access_token: type: string description: "Access token. May also be sent as an 'Authorization: Bearer ' header." example: YOUR_ACCESS_TOKEN count: type: integer description: Items per page. Default 10, max 100. example: 10 page: type: integer description: Page number. Default 1. example: 1 VisualUgcAlbumsResponse: type: object properties: status: type: string example: success code: type: integer example: 200 message: type: string example: OK data: type: object properties: albums: type: array items: type: object properties: album_id: type: string album_name: type: string album_type: type: string product_id: type: string item_count: type: integer created_at: type: string updated_at: type: string pagination: type: object properties: page: type: integer count: type: integer total: type: integer total_pages: type: integer example: albums: - album_id: oM8rZyZMUD05WNvE album_name: Summer Campaign album_type: custom product_id: null item_count: 34 created_at: 2024-06-01 10:00:00 updated_at: 2024-08-15 12:00:00 pagination: page: 1 count: 10 total: 122 total_pages: 13 VisualUgcAlbumMediaResponse: type: object properties: status: type: string example: success code: type: integer example: 200 message: type: string example: OK data: type: object properties: media: type: array items: type: object properties: media_id: type: string source: type: string image_url: type: string thumbnail_url: type: string video_url: type: string caption: type: string posted_by: type: string posted_at: type: string custom_text: type: string likes: type: integer product_tags: type: array description: All products this media is tagged with across every album. product_id is the store/admin product id. items: type: object properties: product_id: type: string product_name: type: string rights_status: type: string created_at: type: string pagination: type: object properties: count: type: integer has_more: type: boolean next_cursor: type: string example: media: - media_id: knpAVlkUrIJ0ZRao source: instagram image_url: https://cdn.u-komi.com/... thumbnail_url: https://cdn.u-komi.com/.../thumb video_url: null caption: Post caption text posted_by: "@username" posted_at: 2024-07-10 12:00:00 custom_text: null likes: 314 product_tags: - product_id: leather-wallet product_name: Leather Wallet - product_id: gift-box product_name: Gift Box rights_status: approved created_at: 2024-07-10 13:00:00 pagination: count: 10 has_more: true next_cursor: eyJzdiI6Li4ufQ== VisualUgcGalleriesResponse: type: object properties: status: type: string example: success code: type: integer example: 200 message: type: string example: OK data: type: object properties: galleries: type: array items: type: object properties: gallery_id: type: string gallery_title: type: string album_id: type: string album_type: type: string item_count: type: integer pagination: type: object properties: page: type: integer count: type: integer total: type: integer total_pages: type: integer example: galleries: - gallery_id: Kk8d95l6U1lDNAol gallery_title: Top Page Gallery album_id: OPX79w2xUpyaQ8q3 album_type: custom item_count: 12 pagination: page: 1 count: 10 total: 72 total_pages: 8 AuthenticationResponse: type: object properties: status: type: string example: OK code: type: integer example: 200 access_token: type: string example: 200 AccountDetailsResponse: type: object properties: status: type: string example: OK code: type: integer example: 200 data: type: object properties: name: type: string url: type: string framework: type: string example: name: account1 url: www.account1.com framework: test ErrorResponse: type: object properties: status: type: string example: error code: type: integer example: 401 message: type: string example: Error Message ViewAllProductReviewResponse: type: object properties: status: type: string example: OK code: type: integer example: 200 response: type: object properties: review: type: array items: type: object properties: id: type: string title: type: string content: type: string score: type: integer created_at: type: string format: date updated_at: type: string format: date sentiment: type: string name: type: string customer_id: type: string email: type: string nickname: type: string reviewer_type: type: string post_type: type: string review_images: type: array items: {} product_sku: type: string product_name: type: string product_url: type: string example: - id: "12345" title: Review title content: Review description score: "4" created_at: 2018-06-12 15:31:34 updated_at: 2018-06-12 15:31:34 sentiment: Clearly Positive name: Customer Name customer_id: cust email: customer@email.com nickname: Customer Nickname reviewer_type: verified_buyer post_type: email review_images: - image/path/1 - image/path/2 product_sku: "10" product_name: Product name product_url: www.productwebsite.com/product-url - id: "12346" title: Review title 1 content: Review description 1 score: "5" created_at: 2018-06-13 15:31:34 updated_at: 2018-06-13 15:31:34 sentiment: Positive name: Customer Name 1 customer_id: cust_1 email: customer1@email.com nickname: Customer Nickname 1 reviewer_type: "" post_type: import review_images: - image/path/1 product_sku: "11" product_name: Product name 1 product_url: www.productwebsite.com/product-url1 - id: "12347" title: Review title 2 content: Review description 2 score: "3" created_at: 2018-06-11 15:31:34 updated_at: 2018-06-11 15:31:34 sentiment: Mixed name: Customer Name 2 customer_id: cust_2 email: customer2@email.com nickname: Customer Nickname 2 reviewer_type: "" post_type: email review_images: - image/path/1 - image/path/2 - image/path/3 product_sku: "11" product_name: Product name 1 product_url: www.productwebsite.com/product-url2 - id: "12348" title: Review title 3 content: Review description 3 score: "4" created_at: 2018-06-12 15:31:34 updated_at: 2018-06-12 15:31:34 sentiment: Clearly Positive name: Customer Name 3 customer_id: cust_3 email: customer3@email.com nickname: Customer Nickname 3 reviewer_type: verified_buyer post_type: website review_images: - image/path/1 - image/path/2 product_sku: "10" product_name: Product name product_url: www.productwebsite.com/product-url ViewAllReviewResponse: type: object properties: status: type: string example: OK code: type: integer example: 200 response: type: object properties: review: type: array items: type: object properties: id: type: string title: type: string content: type: string score: type: integer label: type: string created_at: type: string format: date updated_at: type: string format: date sentiment: type: string order_id: type: string name: type: string customer_id: type: string email: type: string nickname: type: string reviewer_type: type: string post_type: type: string review_images: type: array items: {} is_pickup: type: integer deleted: type: integer likes: type: integer question_answer: type: array items: type: object properties: id: type: string question: type: string answer: type: string enable: type: integer public: type: integer product_sku: type: string product_name: type: string product_url: type: string example: - id: "12345" title: Review title content: Review description score: "4" label: label,label 1,label 2 created_at: 2018-06-12 15:31:34 updated_at: 2018-06-12 15:31:34 sentiment: Clearly Positive order_id: "1234" name: Customer Name customer_id: cust email: customer@email.com nickname: Customer Nickname reviewer_type: verified_buyer post_type: email review_images: - image/path/1 - image/path/2 question_answer: - id: "1" question: Question 1 answer: Answer 1 - id: "2" question: Question 2 answer: Answer 2 - id: "3" question: Question 3 answer: Answer 3 - id: "4" question: Question 4 answer: Answer 4 - id: "5" question: Question 5 answer: "Answer " product_sku: "10" product_name: Product name product_url: www.productwebsite.com/product-url - id: "12346" title: Review title 1 content: Review description 1 score: "5" label: label,label 1,label 2 created_at: 2018-06-13 15:31:34 updated_at: 2018-06-13 15:31:34 sentiment: Positive name: Customer Name 1 customer_id: cust_1 email: customer1@email.com nickname: Customer Nickname 1 reviewer_type: "" post_type: import review_images: - image/path/1 question_answer: - id: "1" question: Question 1 answer: Answer 1 - id: "2" question: Question 2 answer: Answer 2 product_sku: "11" product_name: Product name 1 product_url: www.productwebsite.com/product-url1 - id: "12347" title: Review title 2 content: Review description 2 score: "3" label: label,label 1,label 2 created_at: 2018-06-11 15:31:34 updated_at: 2018-06-11 15:31:34 sentiment: Mixed name: Customer Name 2 customer_id: cust_2 email: customer2@email.com nickname: Customer Nickname 2 reviewer_type: "" review_images: - image/path/1 - image/path/2 - image/path/3 question_answer: - id: "1" question: Question 1 answer: Answer 1 - id: "2" question: Question 2 answer: Answer 2 - id: "3" question: Question 3 answer: Answer 3 post_type: email product_sku: "11" product_name: Product name 1 product_url: www.productwebsite.com/product-url2 - id: "12348" title: Review title 3 content: Review description 3 label: label,label 1,label 2 score: "4" created_at: 2018-06-12 15:31:34 updated_at: 2018-06-12 15:31:34 sentiment: Clearly Positive name: Customer Name 3 customer_id: cust_3 email: customer3@email.com nickname: Customer Nickname 3 reviewer_type: verified_buyer review_images: - image/path/1 - image/path/2 question_answer: - id: "1" question: Question 1 answer: Answer 1 post_type: website product_sku: "10" product_name: Product name product_url: www.productwebsite.com/product-url ViewOnlyReviewsResponse: type: object properties: status: type: string example: OK code: type: integer example: 200 response: type: object properties: review: type: array items: type: object properties: id: type: string title: type: string content: type: string score: type: integer label: type: string created_at: type: string format: date updated_at: type: string format: date sentiment: type: string nickname: type: string reviewer_type: type: string post_type: type: string review_images: type: array items: {} is_pickup: type: integer likes: type: integer question_answer: type: array items: type: object properties: id: type: string question: type: string answer: type: string enable: type: integer public: type: integer product_sku: type: string product_name: type: string product_url: type: string example: - id: "12345" title: Review title content: Review description score: "4" label: label,label 1,label 2 created_at: 2018-06-12 15:31:34 updated_at: 2018-06-12 15:31:34 sentiment: Clearly Positive nickname: Customer Nickname reviewer_type: verified_buyer post_type: email review_images: - image/path/1 - image/path/2 question_answer: - id: "1" question: Question 1 answer: Answer 1 - id: "2" question: Question 2 answer: Answer 2 - id: "3" question: Question 3 answer: Answer 3 - id: "4" question: Question 4 answer: Answer 4 - id: "5" question: Question 5 answer: "Answer " product_sku: "10" product_name: Product name product_url: www.productwebsite.com/product-url - id: "12346" title: Review title 1 content: Review description 1 score: "5" label: label,label 1,label 2 created_at: 2018-06-13 15:31:34 updated_at: 2018-06-13 15:31:34 sentiment: Positive nickname: Customer Nickname 1 reviewer_type: "" post_type: import review_images: - image/path/1 question_answer: - id: "1" question: Question 1 answer: Answer 1 - id: "2" question: Question 2 answer: Answer 2 product_sku: "11" product_name: Product name 1 product_url: www.productwebsite.com/product-url1 - id: "12347" title: Review title 2 content: Review description 2 score: "3" label: label,label 1,label 2 created_at: 2018-06-11 15:31:34 updated_at: 2018-06-11 15:31:34 sentiment: Mixed nickname: Customer Nickname 2 reviewer_type: "" review_images: - image/path/1 - image/path/2 - image/path/3 question_answer: - id: "1" question: Question 1 answer: Answer 1 - id: "2" question: Question 2 answer: Answer 2 - id: "3" question: Question 3 answer: Answer 3 post_type: email product_sku: "11" product_name: Product name 1 product_url: www.productwebsite.com/product-url2 - id: "12348" title: Review title 3 content: Review description 3 score: "4" label: label,label 1,label 2 created_at: 2018-06-12 15:31:34 updated_at: 2018-06-12 15:31:34 sentiment: Clearly Positive nickname: Customer Nickname 3 reviewer_type: verified_buyer review_images: - image/path/1 - image/path/2 question_answer: - id: "1" question: Question 1 answer: Answer 1 post_type: website product_sku: "10" product_name: Product name product_url: www.productwebsite.com/product-url ViewReviewResponse: type: object properties: status: type: string example: OK code: type: integer example: 200 response: type: object properties: review: type: array items: type: object properties: id: type: string title: type: string content: type: string score: type: integer created_at: type: string format: date updated_at: type: string format: date sentiment: type: string name: type: string email: type: string nickname: type: string review_images: type: array items: {} reviewer_type: type: string product_sku: type: string product_name: type: string product_url: type: string example: - id: "12345" title: Review title content: Review description score: "4" created_at: 2018-06-12 15:31:34 updated_at: 2018-06-12 15:31:34 sentiment: Clearly Positive name: Customer Name email: customer@email.com review_images: - image/path/1 - image/path/2 - image/path/3 nickname: Customer Nickname reviewer_type: verified_buyer product_sku: "10" product_name: Product name product_url: www.productwebsite.com/product-url ReviewSummaryResponse: type: object properties: status: type: string example: OK code: type: integer example: 200 data: type: object properties: total_reviews: type: integer example: 10 average_ratings: type: number example: 4.5 ai_summary: type: object q_n_a_summary: type: object rating_breakdown: type: object example: "1": 2 "2": 1 "3": 0 "4": 3 "5": 4 CustomerReviewSummaryResponse: type: object properties: status: type: string example: OK code: type: integer example: 200 data: type: array items: type: object properties: customer_id: type: string description: The customer ID. example: customer_id1 total_reviews: type: integer example: 10 average_ratings: type: number example: 4.5 review_ids: type: string description: Comma-separated list of review unique codes example: abc123,def456 review_product_ids: type: string description: Comma-separated list of product IDs example: prod_1,prod_2 review_first_date: type: string description: Date of the first review (Y-m-d format) example: 2024-01-15 review_last_date: type: string description: Date of the last review (Y-m-d format) example: 2025-02-10 cursor: type: string description: Cursor for the next page; null when there are no more results. Returned only when filter.merge is '0' and customers is not provided. example: cursor_value count: type: integer description: Number of records per page example: 100 ReviewMetaResponse: type: object properties: status: type: string example: OK code: type: integer example: 200 review_meta: type: string example: ViewProductResponse: type: object properties: status: type: string example: OK code: type: integer example: 200 response: type: object properties: products: type: array items: type: object properties: id: type: string name: type: string product_url: type: string image_url: type: string description: type: string short_description: type: string price: type: integer review_email_priority: type: number review_request_email_delay: type: number minimum: 0 description: An unsigned number (non-negative) expiration_date: type: string format: date tag: type: string created_at: type: string format: date updated_at: type: string format: date group: type: string is_published: type: integer description: 1 = published, 0 = unpublished sku: type: string condition: type: string availability: type: string reviews: type: array items: type: object properties: id: type: string title: type: string content: type: string score: type: integer created_at: type: string format: date updated_at: type: string format: date sentiment: type: string name: type: string customer_id: type: string email: type: string post_type: type: string review_images: type: array items: {} nickname: type: string reviewer_type: type: string brand: type: string upc: type: string mpn: type: string isbn: type: string ean: type: string gtin: type: string example: - id: product_id name: product name product_url: www.productwebsite.com/product-url image_url: image/path/1 description: Product description short_description: Product short description price: "123" review_email_priority: "2" review_request_email_delay: 20 expiration_date: 2024-11-03 tag: Product_tag crated_at: 2023-05-03 updated_at: 2023-05-04 group: group1 is_published: 1 sku: product_sku condition: "" availability: In Stock reviews: - id: "12345" title: Review title content: Review description score: "4" created_at: 2018-06-12 15:31:34 updated_at: 2018-06-12 15:31:34 sentiment: Clearly Positive name: Customer Name customer_id: CustomerId email: customer@email.com post_type: email review_images: - image/path/1 - image/path/2 nickname: Customer Nickname reviewer_type: verified_buyer - id: "12346" title: Review title 1 content: Review description 1 score: "5" created_at: 2018-06-13 15:31:34 updated_at: 2018-06-13 15:31:34 sentiment: Positive name: Customer Name 1 customer_id: CustomerId1 email: customer1@email.com post_type: email review_images: - image/path/1 nickname: Customer Nickname 1 reviewer_type: "" brand: Product brand upc: Product upc mpn: Product mpn isbn: Product isbn ean: Product ean gtin: Product gtin - id: product_id_1 name: product name 2 product_url: www.productwebsite.com/product-url1 image_url: image/path/2 description: Product description short_description: Product short description price: "123" review_email_priority: "1" review_request_email_delay: 10 expiration_date: 2024-11-03 crated_at: 2023-05-03 updated_at: 2023-05-04 tag: Product_tag group: group1 is_published: 1 sku: product_sku condition: "" availability: In Stock brand: Product brand upc: Product upc mpn: Product mpn isbn: Product isbn ean: Product ean gtin: Product gtin - id: product_id_2 name: product name 2 product_url: www.productwebsite.com/product-url2 image_url: image/path/2 description: Product description short_description: Product short description price: "123" review_email_priority: "0" review_request_email_delay: 5 expiration_date: 2024-11-03 crated_at: 2023-05-03 updated_at: 2023-05-04 tag: Product_tag group: group1 is_published: 1 sku: product_sku condition: "" availability: In Stock reviews: - id: "12345" title: Review title content: Review description score: "4" created_at: 2018-06-12 15:31:34 updated_at: 2018-06-12 15:31:34 sentiment: Clearly Positive name: Customer Name customer_id: CustomerId email: customer@email.com post_type: email review_images: - image/path/1 nickname: Customer Nickname reviewer_type: verified_buyer brand: Product brand upc: Product upc mpn: Product mpn isbn: Product isbn ean: Product ean gtin: Product gtin - id: product_id_3 name: product name 3 product_url: www.productwebsite.com/product-url3 image_url: image/path/3 description: Product description short_description: Product short description price: "123" review_email_priority: "-1" review_request_email_delay: 0 expiration_date: 2024-11-03 crated_at: 2023-05-03 updated_at: 2023-05-04 tag: Product_tag group: group1 is_published: 1 sku: product_sku condition: "" availability: In Stock brand: Product brand upc: Product upc mpn: Product mpn isbn: Product isbn ean: Product ean gtin: Product gtin ViewProductBasicResponse: type: object properties: status: type: string example: OK code: type: integer example: 200 response: type: object properties: products: type: array items: type: object properties: id: type: string name: type: string product_url: type: string image_url: type: string description: type: string short_description: type: string price: type: integer review_email_priority: type: number review_request_email_delay: type: number minimum: 0 description: An unsigned number (non-negative) expiration_date: type: string format: date tag: type: string created_at: type: string format: date updated_at: type: string format: date group: type: string is_published: type: integer description: 1 = published, 0 = unpublished sku: type: string condition: type: string availability: type: string reviews: type: array items: type: object properties: id: type: string title: type: string content: type: string score: type: integer created_at: type: string format: date updated_at: type: string format: date sentiment: type: string post_type: type: string review_images: type: array items: {} nickname: type: string reviewer_type: type: string brand: type: string upc: type: string mpn: type: string isbn: type: string ean: type: string gtin: type: string example: - id: product_id name: product name product_url: www.productwebsite.com/product-url image_url: image/path/1 description: Product description short_description: Product short description price: "123" review_email_priority: "2" review_request_email_delay: 20 expiration_date: 2024-11-03 tag: Product_tag created_at: 2023-11-03 updated_at: 2023-11-03 group: group1 is_published: 1 sku: product_sku condition: "" availability: In Stock reviews: - id: "12345" title: Review title content: Review description score: "4" created_at: 2018-06-12 15:31:34 updated_at: 2018-06-12 15:31:34 sentiment: Clearly Positive post_type: email review_images: - image/path/1 - image/path/2 nickname: Customer Nickname reviewer_type: verified_buyer - id: "12346" title: Review title 1 content: Review description 1 score: "5" created_at: 2018-06-13 15:31:34 updated_at: 2018-06-13 15:31:34 sentiment: Positive post_type: email review_images: - image/path/1 nickname: Customer Nickname 1 reviewer_type: "" brand: Product brand upc: Product upc mpn: Product mpn isbn: Product isbn ean: Product ean gtin: Product gtin - id: product_id_1 name: product name 2 product_url: www.productwebsite.com/product-url1 image_url: image/path/2 description: Product description short_description: Product short description price: "123" review_email_priority: "1" review_request_email_delay: 10 expiration_date: 2024-11-03 tag: Product_tag created_at: 2023-11-03 updated_at: 2023-11-03 group: group1 is_published: 1 sku: product_sku condition: "" availability: In Stock brand: Product brand upc: Product upc mpn: Product mpn isbn: Product isbn ean: Product ean gtin: Product gtin - id: product_id_2 name: product name 2 product_url: www.productwebsite.com/product-url2 image_url: image/path/2 description: Product description short_description: Product short description price: "123" review_email_priority: "0" review_request_email_delay: 5 expiration_date: 2024-11-03 tag: Product_tag created_at: 2023-11-03 updated_at: 2023-11-03 group: group1 is_published: 1 sku: product_sku condition: "" availability: In Stock reviews: - id: "12345" title: Review title content: Review description score: "4" created_at: 2018-06-12 15:31:34 updated_at: 2018-06-13 15:31:34 sentiment: Clearly Positive post_type: email review_images: - image/path/1 - image/path/2 - image/path/3 nickname: Customer Nickname reviewer_type: verified_buyer brand: Product brand upc: Product upc mpn: Product mpn isbn: Product isbn ean: Product ean gtin: Product gtin - id: product_id_3 name: product name 3 product_url: www.productwebsite.com/product-url3 image_url: image/path/3 description: Product description short_description: Product short description price: "123" review_email_priority: "-1" review_request_email_delay: 0 expiration_date: 2024-11-03 tag: Product_tag created_at: 2023-11-03 updated_at: 2023-11-03 group: group1 is_published: 1 sku: product_sku condition: "" availability: In Stock brand: Product brand upc: Product upc mpn: Product mpn isbn: Product isbn ean: Product ean gtin: Product gtin RetrieveProductResponse: type: object properties: status: type: string example: OK code: type: integer example: 200 response: type: object properties: products: type: array items: type: object properties: id: type: string name: type: string product_url: type: string image_url: type: string description: type: string short_description: type: string price: type: string review_email_priority: type: number review_request_email_delay: type: number minimum: 0 description: An unsigned number (non-negative) expiration_date: type: string format: date tag: type: string created_at: type: string format: date updated_at: type: string format: date group: type: string blacklisted: type: integer description: 0 = not blacklisted, 1 = blacklisted is_published: type: integer description: 1 = published, 0 = unpublished sku: type: string condition: type: string availability: type: string brand: type: string upc: type: string mpn: type: string isbn: type: string ean: type: string gtin: type: string example: - id: product_id name: product name product_url: www.productwebsite.com/product-url image_url: image/path/1 description: Product description short_description: Product short description price: "55000.00" review_email_priority: "2" review_request_email_delay: 20 expiration_date: 2024-11-03 tag: Product_tag created_at: 2023-05-03 updated_at: 2023-05-04 group: group1 blacklisted: 0 is_published: 1 sku: product_sku condition: "" availability: in_stock brand: Product brand upc: Product upc mpn: Product mpn isbn: Product isbn ean: Product ean gtin: Product gtin CreateProducts: type: object required: - access_token - products properties: access_token: type: string example: access_token products: type: object description: product_id is ID of the product in store properties: product_id: $ref: "#/components/schemas/OneProductObject" CreateProductResponse: type: object properties: status: type: string example: OK code: type: integer example: 200 errors: type: array items: type: object properties: message: type: string InlineReviewFormTokenRequest: type: object required: - access_token - orders properties: access_token: type: string example: access_token orders: type: array items: $ref: "#/components/schemas/InlineReviewFormTokenRequestOrderObject" InlineReviewFormTokenRequestOrderObject: type: object required: - order_id - product_id properties: order_id: type: string example: "12345" product_id: type: string example: "12345" InlineReviewFormTokenResponse: type: object properties: status: type: string example: OK code: type: integer example: 200 orders: type: array items: $ref: "#/components/schemas/InlineReviewFormTokenResponseOrderObject" InlineReviewFormTokenResponseOrderObject: type: object properties: order_id: type: string example: "12345" product_id: type: string example: "12345" verification_token: type: string example: review_verification_token CreateOrder: type: object required: - access_token - orders properties: access_token: type: string example: access_token orders: type: array items: $ref: "#/components/schemas/CreateOrderObject" CreateOrderObject: type: object required: - customer_email - customer_name - order_id - products properties: customer_email: type: string format: email example: customer@email.com customer_name: type: string example: Customer Name customer_id: type: string example: Customer_id line_id: type: string example: Uxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx customer_nickname: type: string example: Customer Nickname order_id: type: string example: "12345" order_date: type: string format: date example: 2017-11-03 currency_iso: type: string example: JPY description: The ISO code of the currency in which the order was made coupon_code: type: string example: coupon_code email_lang: type: string description: Language of the review request email (ja/en/zh/zh-tw/zh-cn/ko/fr/th/de) enum: - ja - en - zh - zh-tw - zh-cn - ko - fr - th - de example: ja products: type: object description: product_id is ID of the product in store properties: product_id: $ref: "#/components/schemas/OneProductObject" ViewReviewObject: type: object required: - access_token properties: access_token: type: string example: access_token reviews: type: object description: Review search parameters properties: from_id: example: Get review after selected id Eg.12345 type: string from_date: example: Get review after selected date Eg.2017-11-03 type: string updated_date: example: Get review updated/created after selected date Eg.2017-11-03 type: string count: example: Number of reviews to return eg.10 type: string page: example: Page number to return reviews for eg.2 type: string deleted: example: Include unpublished reviews Eg.0/1 type: string sort: example: Review sort order (date/stars/like/sentiment/buyer/picture/response) Default is date type: string sort_order: example: Sorting order. Option is asc/desc type: string stars: example: Star rating for the product (1 to 5) Eg.5 type: string stars_sorting: example: Options are greater/less/equal. Default is equal type: string FilterForReviewSummaryParam: type: object properties: filter: type: array example: expiration: expired/not_expired items: {} GroupReviewSummaryParam: type: object required: - groups properties: groups: type: array example: - group1 - group2 items: {} filter: type: array example: expiration: expired/not_expired merge: 0/1 empty: 0/1 items: {} CustomerReviewSummaryParam: type: object properties: access_token: type: string description: Optional. Required to list all customers when filter.merge is "0". example: access_token customers: oneOf: - type: array items: type: string - type: string description: Array of customer IDs or comma-separated string of customer IDs. If not provided, returns all customers. example: - customer_id1 - customer_id2 filter: type: object description: Filter options example: merge: 0/1 empty: 0/1 updated_date: type: string example: 2024-01-15 cursor: type: string description: Cursor for pagination. Use the cursor value from the previous response to get the next page. Only works when filter.merge is '0' and customers is not provided. example: cursor_value count: type: integer description: Number of records per page. Default is 10, maximum is 1000. example: 10 ViewAllReviewWithOrderResponse: type: object properties: status: type: string example: OK code: type: integer example: 200 response: type: object properties: review: type: array items: type: object properties: id: type: string title: type: string content: type: string score: type: integer created_at: type: string format: date updated_at: type: string format: date sentiment: type: string name: type: string email: type: string nickname: type: string reviewer_type: type: string post_type: type: string review_images: type: array items: {} order: type: object properties: id: type: string user_name: type: string user_email: type: string user_nickname: type: string product_sku: type: integer product_name: type: string product_url: type: string order_date: type: string coupon_code: type: string example: - id: "12345" title: Review title content: Review description score: "4" created_at: 2018-06-12 15:31:34 updated_at: 2018-06-12 15:31:34 sentiment: Clearly Positive name: Customer Name email: customer@email.com nickname: Customer Nickname reviewer_type: verified_buyer post_type: email review_images: - image/path/1 - image/path/2 order: id: "12345" user_name: Customer Name user_email: customer@email.com user_nickname: Customer Nickname product_sku: "10" product_name: Product name 1 product_url: www.productwebsite.com/product-url1 order_date: 2017-11-03 coupon_code: u-komi-write-review - id: "12346" title: Review title 1 content: Review description 1 score: "5" created_at: 2018-06-13 15:31:34 updated_at: 2018-06-13 15:31:34 sentiment: Positive name: Customer Name 1 email: customer1@email.com nickname: Customer Nickname 1 reviewer_type: "" post_type: email review_images: - image/path/1 order: id: "123456" user_name: Customer Name user_email: customer@email.com user_nickname: Customer Nickname product_sku: "10" product_name: Product name 1 product_url: www.productwebsite.com/product-url1 order_date: 2017-11-03 coupon_code: u-komi-upload-photo - id: "12347" title: Review title 2 content: Review description 2 score: "3" created_at: 2018-06-11 15:31:34 updated_at: 2018-06-11 15:31:34 sentiment: Mixed name: Customer Name 2 email: customer2@email.com nickname: Customer Nickname 2 reviewer_type: "" post_type: email review_images: - image/path/1 - image/path/2 - image/path/3 order: id: "1234567" user_name: Customer Name user_email: customer@email.com user_nickname: Customer Nickname product_sku: "10" product_name: Product name 1 product_url: www.productwebsite.com/product-url1 order_date: 2017-11-03 coupon_code: u-komi-share-review - id: "12348" title: Review title 3 content: Review description 3 score: "4" created_at: 2018-06-12 15:31:34 updated_at: 2018-06-12 15:31:34 sentiment: Clearly Positive name: Customer Name 3 email: customer3@email.com nickname: Customer Nickname 3 reviewer_type: verified_buyer post_type: website review_images: - image/path/1 - image/path/2 order: id: "12345678" user_name: Customer Name user_email: customer@email.com user_nickname: Customer Nickname product_sku: "10" product_name: Product name 1 product_url: www.productwebsite.com/product-url1 order_date: 2017-11-03 coupon_code: u-komi-write-review ViewProductObject: type: object required: - access_token properties: access_token: type: string example: access_token product: type: object description: Product search parameters properties: group: type: string example: group_name tag: type: string example: tag name from_date: type: string example: 2017-11-03 updated_date: type: string example: 2017-11-03 has_reviews: type: integer example: Filter products having reviews (0/1) Default is 0 review_updated_date: type: string example: 2017-11-03 review: type: integer example: Include Review Data (0/1) Default is 0 review_count: type: integer example: Review count per product (1 or higher) Default is 10 review_sort: type: string example: Review sort order (date/stars/like/sentiment/buyer/picture/response) Default is date review_sort_order: type: string example: Sort order (asc/desc) Default is desc count: type: integer example: "10" page: type: integer example: "1" ViewBasicProductObject: type: object required: - access_token properties: access_token: type: string example: access_token product: type: object description: Product search parameters properties: group: type: string example: group_name tag: type: string example: tag name from_date: type: string example: 2017-11-03 updated_date: type: string example: 2017-11-03 has_reviews: type: integer example: Filter products having reviews (0/1) Default is 0 review_updated_date: type: string example: 2017-11-03 review: type: integer example: Include Review Data (0/1) Default is 0 review_count: type: integer example: Review count per product (1 or higher) Default is 10 review_sort: type: string example: Review sort order (date/stars/like/sentiment/buyer/picture/response) Default is date review_sort_order: type: string example: Sort order (asc/desc) Default is desc count: type: integer example: "10" page: type: integer example: "1" RetrieveProductObject: type: object required: - access_token - product_id properties: access_token: type: string example: access_token product_id: type: string description: Single product_id or comma-separated product_ids example: P001,P002,P003 ViewOrderObject: type: object required: - access_token properties: access_token: type: string example: access_token orders: type: object description: Order search parameters properties: from_id: type: string example: "12345" from_date: type: string format: date example: 2017-11-03 count: type: integer example: "10" page: type: integer example: "4" retrieve_reviews: type: integer example: "1" order_id: type: string example: order_id sort_order: type: string example: new/old Default is new cursor_date: type: string example: 2017-11-03 cursor_source: type: integer example: 1 cursor_id: type: integer example: 12345 ViewBlacklistProductObject: type: object required: - access_token properties: access_token: type: string example: access_token product: type: object description: Product search parameters properties: count: type: integer example: "10" page: type: integer example: "1" ViewBlacklistProductResponse: type: object properties: status: type: string example: OK code: type: integer example: 200 response: type: object properties: products: type: array items: type: string example: - - product_id_1 - product_id_2 - product_id_3 - product_id_4 - product_id_5 CreateBlacklistProducts: type: object required: - access_token - product_id properties: access_token: type: string example: access_token product_id: type: array items: type: string example: - productid1 - productid2 - productid3 - productid4 - productid5 description: product_id is ID of the product in store CreateBlacklistProductResponse: type: object properties: status: type: string example: OK code: type: integer example: 200 ViewOrderResponse: type: object properties: status: type: string example: OK code: type: integer example: 200 response: type: object properties: order: type: array items: type: object properties: id: type: string customer_id: type: string line_id: type: string user_name: type: string user_email: type: string user_nickname: type: string product_sku: type: integer product_name: type: string product_url: type: string product_image: type: string product_description: type: string order_date: type: string coupon_code: type: string review: type: object example: - id: "1" customer_id: Customer_id line_id: Uxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx user_name: Customer Name user_email: customer@email.com user_nickname: Customer Nickname product_sku: "10" product_name: Product name product_url: www.productwebsite.com/product-url product_image: www.productwebsite.com/product-image-url product_description: This is the description of a product order_date: 2017-11-03 coupon_code: u-komi-write-review review: id: abtocde title: Review Title content: Review Content score: "5.00" sentiment: Mixed published: "1" created_at: 2017-12-13 09:30:07 updated_at: 2017-12-13 09:30:07 - id: "2" customer_id: Customer_id line_id: Uxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx user_name: Customer Name user_email: customer@email.com user_nickname: Customer Nickname product_sku: "11" product_name: Product name product_url: www.productwebsite.com/product-url1 product_image: www.productwebsite.com/product-image-url1 product_description: This is the description of a product order_date: 2017-11-03 coupon_code: u-komi-upload-photo review: [] - id: "3" customer_id: Customer_id line_id: Uxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx user_name: Customer Name user_email: customer@email.com user_nickname: Customer Nickname product_sku: "12" product_name: Product name 2 product_url: www.productwebsite.com/product-url2 product_image: www.productwebsite.com/product-image-url2 product_description: This is the description of a product order_date: 2017-11-03 coupon_code: u-komi-share-review review: [] - id: "4" customer_id: Customer_id line_id: Uxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx user_name: Customer Name user_email: customer@email.com user_nickname: Customer Nickname product_sku: "13" product_name: Product name 2 product_url: www.productwebsite.com/product-url3 product_image: www.productwebsite.com/product-image-url3 product_description: This is the description of a product order_date: 2017-11-03 coupon_code: u-komi-write-review review: [] total_order: type: integer example: 4 total_purchase: type: number example: 400 cursor: type: object properties: cursor_date: type: string cursor_source: type: integer cursor_id: type: integer OneProductObject: type: object required: - url - name properties: url: type: string format: uri example: http://www.yoursite.com/product_url.html name: type: string example: Product Name image: type: string format: uri example: http://www.yoursite.com/image_path/image_name.jpg description: type: string example: This is the description of a product short_description: type: string example: This is the short description of a product group_name: type: string example: Group Name price: type: number example: "123" review_email_priority: type: number example: 2/1/0/-1/-2 review_request_email_delay: type: number minimum: 0 example: 10 expiration_date: type: string format: date example: 2017-11-03 coupon_code: type: string example: coupon_code specs: type: object additionalProperties: type: string tag: type: string example: Tag product_tags: type: string example: Tag1,Tag2 created_at: type: string format: date example: 2017-11-03 updated_at: type: string format: date example: 2017-11-03 is_published: type: integer enum: - 0 - 1 example: 1 description: 1 = published, 0 = unpublished (not shown on the U-KOMI review portal). If omitted, existing products keep their value and new products get 1. CreateOrderResponse: type: object properties: status: type: string example: OK code: type: integer example: 200 CancelOrderObject: type: object required: - access_token - orders properties: access_token: type: string example: access_token orders: type: array items: type: object required: - order_id properties: order_id: type: string product_ids: type: array items: type: string example: - order_id: "12345" product_ids: - product_id1 - product_id2 - order_id: "12346" CancelOrderResponse: type: object properties: status: type: string example: OK code: type: integer example: 200 CreatGroupObject: type: object required: - access_token - group_name properties: access_token: type: string example: access_token group_name: type: string example: Group Name CreatGroupResponse: type: object properties: status: type: string example: OK code: type: integer example: 200 ViewAllGroupObject: type: object properties: access_token: type: string example: access_token group: type: object description: Group search parameters properties: from_date: type: string format: date example: 2017-11-03 updated_date: type: string format: date example: 2017-11-03 ViewAllGroupResponse: type: object properties: status: type: string example: OK code: type: integer example: 200 groups: type: array items: type: string example: - group 3 - group 2 - group 1 DeleteGroupObject: type: object required: - access_token - group_name properties: access_token: type: string example: access_token group_name: type: string example: Group Name DeleteGroupResponse: type: object properties: status: type: string example: OK code: type: integer example: 200 ProductGroupsObject: type: object required: - access_token - group_name - product_action - product_id properties: access_token: type: string example: access_token group_name: type: string example: Group Name product_action: type: string enum: - add - remove example: add product_id: type: string example: 101,102,103 ProductGroupsResponse: type: object properties: status: type: string example: OK code: type: integer example: 200 ViewGroupsObject: type: object required: - group_name properties: access_token: type: string example: access_token group_name: type: string example: Group Name ViewGroupsResponse: type: object properties: status: type: string example: OK code: type: integer example: 200 response: type: object properties: groups: type: object required: - name properties: name: type: string example: Group Name products: type: array items: type: object properties: sku: type: string example: "12345" name: type: string example: Product name url: type: string example: www.productwebsite.com/product-url ViewAllQuestionResponse: type: object properties: status: type: string example: OK code: type: integer example: 200 response: type: object properties: total_questions: type: string total_unaswer_count: type: string questions: type: array items: type: object properties: id: type: string product_id: type: string question: type: string questioner: type: object properties: name: type: string customer_id: type: string email: type: string time: type: string answer: type: string answerer: type: object properties: avtar: type: string email: type: string time: type: string bazora: type: string label: type: string published: type: string example: total_questions: "367" total_unaswer_count: "39" questions: - id: zaSxasQ product_id: "12345" question: is it applicable on curly hair? questioner: name: Customer Name custome_id: null email: customer@email.com time: 2018-06-12 15:31:34 answer: Yes, It is suitable for all types of hair. answerer: name: Customer Name avtar: http://www.server.com/image_path time: 2018-06-12 15:31:34 bazora: "1" label: label,label 1,label 2 published: "1" - id: DeJdEe3 product_id: "12345" question: is it availble in blue color? questioner: name: Customer1 Name custome_id: customer1 email: customer1@email.com time: 2019-07-12 15:31:34 answer: It is avaible in 5 more color. answerer: name: Store Admin avtar: http://www.server.com/image_path time: 2019-10-12 15:31:34 bazora: "0" label: label,label 1,label 2 published: "0" - id: "12347" product_id: "12345" question: Is this only for men?! questioner: name: Customer2 Name custome_id: customer2 email: customer2@email.com time: 2020-05-10 15:31:34 answer: Yes answerer: name: Store Admin avtar: http://www.server.com/image_path time: 2020-06-12 15:31:34 bazora: "1" label: label,label 1,label 2 published: "1" ViewQuestionResponse: type: object properties: status: type: string example: OK code: type: integer example: 200 response: type: object properties: questions: type: array items: type: object properties: id: type: string question: type: string questioner: type: object properties: name: type: string email: type: string time: type: string label: type: string answer: type: integer answerer: type: object properties: avtar: type: string email: type: string time: type: string example: questions: - id: zaSxasQ question: is it applicable on curly hair? questioner: name: Customer Name email: customer@email.com time: 2018-06-12 15:31:34 answer: Yes, It is suitable for all types of hair. answerer: name: Customer Name avtar: http://www.server.com/image_path time: 2018-06-12 15:31:34 label: label,label 1,label 2 - id: DeJdEe3 question: is it availble in blue color? questioner: name: Customer1 Name email: customer1@email.com time: 2019-07-12 15:31:34 answer: It is avaible in 5 more color. answerer: name: Store Admin avtar: http://www.server.com/image_path time: 2019-10-12 15:31:34 label: label,label 1,label 2 - id: "12347" question: Is this only for men?! questioner: name: Customer2 Name email: customer2@email.com time: 2020-05-10 15:31:34 answer: Yes answerer: name: Store Admin avtar: http://www.server.com/image_path time: 2020-06-12 15:31:34 label: label,label 1,label 2 ViewQuestionCountResponse: type: object properties: status: type: string example: OK code: type: integer example: 200 response: type: object properties: count: type: integer example: 450 ViewReviewBasicResponse: type: object properties: status: type: string example: OK code: type: integer example: 200 response: type: object properties: review: type: array items: type: object properties: id: type: string title: type: string content: type: string score: type: integer created_at: type: string format: date updated_at: type: string format: date sentiment: type: string nickname: type: string review_images: type: array items: {} reviewer_type: type: string product_sku: type: string product_name: type: string product_url: type: string example: - id: "12345" title: Review title content: Review description score: "4" created_at: 2018-06-12 15:31:34 updated_at: 2018-06-12 15:31:34 sentiment: Clearly Positive nickname: Customer Nickname review_images: - image/path/1 - image/path/2 reviewer_type: verified_buyer product_sku: "10" product_name: Product name product_url: www.productwebsite.com/product-url ViewAllProductReviewBasicResponse: type: object properties: status: type: string example: OK code: type: integer example: 200 response: type: object properties: review: type: array items: type: object properties: id: type: string title: type: string content: type: string score: type: integer created_at: type: string format: date updated_at: type: string format: date sentiment: type: string nickname: type: string review_images: type: array items: {} reviewer_type: type: string product_sku: type: string product_name: type: string product_url: type: string ReviewWithOrdersBasicObject: type: object properties: reviews: type: object properties: count: type: integer example: 10 page: type: integer example: 1 from_id: type: string example: abc123 from_date: type: string example: 2025-01-01 updated_date: type: string example: 2025-01-01 stars: type: integer example: 5 stars_sorting: type: string example: greater sort: type: string example: date sort_order: type: string example: desc deleted: type: string example: no ReviewWithOrdersBasicResponse: type: object properties: status: type: string example: OK code: type: integer example: 200 response: type: object properties: review: type: array items: type: object properties: id: type: string title: type: string content: type: string score: type: integer created_at: type: string format: date updated_at: type: string format: date sentiment: type: string nickname: type: string review_images: type: array items: {} reviewer_type: type: string order: type: object properties: id: type: string order_date: type: string product_sku: type: string product_name: type: string product_url: type: string ReviewLikeObject: type: object properties: user_identifier: type: string example: cust_abc123 vote: type: string example: up to like, down to dislike. Default is up. ReviewLikeResponse: type: object properties: status: type: string example: OK code: type: integer example: 200 data: type: object description: disliked and dislike_count are only returned when dislikes are enabled for the account. properties: review_id: type: string example: abc123 liked: type: boolean example: true like_count: type: integer example: 42 disliked: type: boolean example: false dislike_count: type: integer example: 3 ReviewLikesListResponse: type: object properties: status: type: string example: OK code: type: integer example: 200 data: type: array items: type: object properties: review_id: type: string liked: type: boolean like_count: type: integer disliked: type: boolean dislike_count: type: integer ViewAllQuestionBasicResponse: type: object properties: status: type: string example: OK code: type: integer example: 200 response: type: object properties: total_questions: type: string total_unaswer_count: type: string questions: type: array items: type: object properties: id: type: string product_id: type: string question: type: string questioner: type: object properties: name: type: string time: type: string answer: type: string answerer: type: object properties: avtar: type: string time: type: string label: type: string published: type: string ViewQuestionBasicResponse: type: object properties: status: type: string example: OK code: type: integer example: 200 response: type: object properties: questions: type: array items: type: object properties: id: type: string question: type: string questioner: type: object properties: name: type: string time: type: string answer: type: string answerer: type: object properties: avtar: type: string time: type: string label: type: string QuestionLikeObject: type: object properties: user_identifier: type: string example: cust_abc123 vote: type: string example: up to like, down to dislike. Default is up. QuestionLikeResponse: type: object properties: status: type: string example: OK code: type: integer example: 200 data: type: object description: disliked and dislike_count are only returned when dislikes are enabled for the account. properties: question_id: type: string example: qabc123 liked: type: boolean example: true like_count: type: integer example: 12 disliked: type: boolean example: false dislike_count: type: integer example: 2 QuestionLikesListResponse: type: object properties: status: type: string example: OK code: type: integer example: 200 data: type: array items: type: object properties: question_id: type: string liked: type: boolean like_count: type: integer disliked: type: boolean dislike_count: type: integer ReviewFormFieldsObject: type: object required: - product_id properties: product_id: type: string example: "12345" order_id: type: string example: ORDER123 ReviewFormFieldsResponse: type: object properties: status: type: string example: success message: type: string example: Form fields retrieved successfully data: type: object properties: product: type: object properties: product_id: type: string product_name: type: string product_image: type: string is_site_review: type: boolean form_config: type: object properties: language: type: string email_required: type: boolean submit_button_text: type: string success_message: type: string fields: type: array items: type: object properties: field_key: type: string field_type: type: string label: type: string validation: type: object options: type: array items: {} ReviewSubmitObject: type: object required: - product_id - score - review properties: product_id: type: string example: "12345" score: type: integer example: 5 review: type: string example: Great product, highly recommend. title: type: string example: Loved it name: type: string example: Taro Yamada email: type: string example: taro@example.com nickname: type: string example: Taro order_id: type: string example: ORDER123 custom_form_ans: type: object description: Answers to custom questions, keyed by question id. example: "123": answer ReviewSubmitResponse: type: object properties: status: type: string example: success message: type: string example: Thank you! Please check your email to verify your review. data: type: object properties: verification_email_sent: type: boolean example: true message: type: string ReviewSubmitFieldErrorResponse: type: object properties: status: type: string example: field_error errors: type: object description: Validation messages keyed by field. example: score: Please select a rating email: Valid email is required CustomerOrderObject: type: object required: - access_token properties: access_token: type: string example: access_token customer_id: type: string example: Customer id. Provide customer_id or email; if both are passed, customer_id is used. email: type: string example: taro@example.com page: type: integer example: 1 limit: type: integer example: Records per page, or per customer in bulk mode. Default is 10, maximum is 100. customer_ids: type: array description: "Bulk mode: up to 50 customer ids (strings or integers). When sent, customer_id and email are ignored." items: type: string example: - C001 - C002 order_ids: type: array description: "Return only these orders of the customer (up to 100 order ids). limit and page are then ignored." items: type: string example: - "1001" - "1002" CustomerOrderItem: type: object properties: order_id: type: string order_date: type: string product_ids: type: string products: type: array items: type: object properties: product_id: type: string product_name: type: string product_url: type: string product_image_url: type: string token: type: string is_review_submitted: type: integer nullable: true description: "1 = the review request of this line is submitted, 0 = not submitted yet, null = this line has no review request." example: 0 is_cancelled: type: integer description: "1 = this line is cancelled, 0 = not cancelled." example: 0 reviewed_at: type: string nullable: true description: "Date and time (Y-m-d H:i:s) of the customer's latest review of this product, matched by customer_id or email, or posted from this line's review request. Staff reviews are not counted. null when there is none. Not tied to this order: compare it with order_date." example: "2026-10-03 12:00:00" CustomerOrderResponse: type: object properties: status: type: string example: success orders: type: array items: $ref: "#/components/schemas/CustomerOrderItem" metadata: type: object properties: total_orders: type: integer page: type: integer limit: type: integer count: type: integer total_pages: type: integer CustomerOrderBulkResponse: type: object properties: status: type: string example: success customers: type: array description: "One entry per requested customer, in request order, also when the customer has no orders." items: type: object properties: customer_id: type: string total_orders: type: integer description: "Number of the customer's orders (before limit)." orders: type: array items: $ref: "#/components/schemas/CustomerOrderItem" metadata: type: object properties: customer_count: type: integer description: "Number of customers in the response." limit: type: integer description: "Orders per customer. With order_ids, the number of requested order ids." StoreBadgesResponse: type: object properties: status: type: string example: OK code: type: string example: "200" data: type: array items: type: object properties: category: type: string description: Category name. Empty string when unset. name: type: string description: Badge name in the account's configured language, falling back to Japanese. description: type: string description: Badge description in the account's configured language, falling back to Japanese. image_url: type: string description: Badge image SSL serving URL. priority: type: integer description: Display priority. Higher is more important. earned_at: type: string description: Datetime the badge was earned, formatted YYYY-MM-DD HH:MM:SS. example: - category: Review Count name: 1000 Reviews Achieved description: Awarded to stores with 1000+ total reviews. image_url: https://storage.googleapis.com/example/badge.png priority: 100 earned_at: 2026-01-15 09:30:00 FaqsResponse: type: object properties: status: type: string example: OK code: type: string example: "200" data: type: object properties: enabled: type: boolean description: false when the FAQ feature is not available or nothing is published. settings: type: object description: FAQ widget display settings. properties: faq_per_page: type: integer accordion_default_open: type: boolean search_box_enabled: type: boolean category_nav_enabled: type: boolean accent_color: type: string custom_css: type: string categories: type: array description: Categories in display order. FAQs without a category come last with an empty title. items: type: object properties: title: type: string custom_id: type: string description: Merchant-defined category ID, or null. nullable: true faqs: type: array items: type: object properties: question: type: string answer: type: string description: May contain simple HTML (p, br, ol, ul, li, a, b, strong, em, i). lang: type: object description: Widget UI labels in the resolved language. example: enabled: true settings: faq_per_page: 10 accordion_default_open: false search_box_enabled: true category_nav_enabled: true accent_color: "#333333" custom_css: "" categories: - title: Shipping custom_id: shipping faqs: - question: How long does delivery take? answer:

Orders ship within 2 business days.

lang: search_placeholder: Search FAQs no_results: No matching FAQs found. all_categories: All uncategorized: Other snippet: type: string description: FAQPage JSON-LD script tag. Present only when rich snippets are enabled. example: