SazitoSazito SDKv1.2.2
API Reference

Feedbacks

Tajrobe review flow (seed, order rating, product reviews, stats, and uploads) plus legacy feedback endpoints.

Review flow methods

Get Seed

Use: feedbacks.getSeed(orderIdentifier, options?).

Gets review seed data from /api/v1/feedbacks/seed/{orderIdentifier}.

ParameterTypeRequiredDescription
orderIdentifierstringRequiredOrder identifier from order/invoice.
optionsRequestOptionsOptionalPer-request controls.

Returns: SazitoResponse<FeedbackSeed>.

Create Order Rating

Use: feedbacks.createOrderRating(input, options?).

Submits order-level rating to /api/v1/feedbacks/comments.

FieldTypeRequiredDescription
input.orderIdstringRequiredOrder ID.
input.orderIdentifierstringRequiredOrder identifier.
input.orderRatenumberRequiredOrder rate (1..5).
optionsRequestOptionsOptionalPer-request controls.

Returns: SazitoResponse<{ id: string }> where id is commentId.

Submit Product Review

Use: feedbacks.submitProductReview(input, options?).

Submits product review payload to /api/v1/feedbacks/comments/details.

Required fields include:

  • commentId
  • productId
  • productVariantId
  • productName
  • productRate
  • text
  • recommendationStatus
  • productAttributes
  • productImage
  • pros
  • cons
  • attachmentsServeKeys
  • owner
  • isAnonymous

Returns: SazitoResponse<void>.

Get Product Statistics

Use: feedbacks.getProductStatistics(productId, options?).

Reads review statistics from /api/v1/feedbacks/comments/details/{productId}?exclude=comments.

Returns: SazitoResponse<ProductStatistics>.

Get Product Reviews

Use: feedbacks.getProductReviews(productId, filters?, options?).

Reads paginated reviews from /api/v1/feedbacks/comments/details/{productId}.

FieldTypeRequiredDescription
filters.pageNumbernumberOptionalPage number (default 1).
filters.pageSizenumberOptionalPage size (default 10).

Returns: SazitoResponse<ProductReviewsResponse>.

Upload Review Images

Use: feedbacks.uploadReviewImages(images, options?).

Uploads review images to /api/v1/service/filemanager/uploads/public/tajrobe.

FieldTypeRequiredDescription
images[].fileFile | BlobRequiredImage file.
images[].namestringOptionalFile display name.
images[].altstringOptionalAlt text.

Returns: SazitoResponse<{ images: ReviewUploadedImage[] }> where each image includes serveKey.

Legacy methods (backward compatibility)

  • feedbacks.list(filters?, options?)
  • feedbacks.create(input, options?)
  • feedbacks.get(feedbackId, options?)

These call legacy /api/v1/feedbacks endpoints and are kept for existing integrations.

Example: End-to-end review submission

const seed = await client.feedbacks.getSeed('ORDER-1001');
if (seed.error) throw new Error(seed.error.message);

if (!seed.data?.hasCommentAlready) {
  const orderRating = await client.feedbacks.createOrderRating({
    orderId: seed.data?.orderId ?? '',
    orderIdentifier: seed.data?.orderIdentifier ?? '',
    orderRate: 5
  });
  if (orderRating.error) throw new Error(orderRating.error.message);

  const first = seed.data?.items?.[0];
  if (first) {
    const productReview = await client.feedbacks.submitProductReview({
      commentId: orderRating.data?.id ?? '',
      productId: first.productId,
      productVariantId: first.productVariantId,
      productName: first.productName,
      productAttributes: first.productAttributes,
      productImage: first.productImage,
      productRate: 5,
      text: 'Great product.',
      pros: ['Quality'],
      cons: [],
      recommendationStatus: 'RECOMMENDED',
      attachmentsServeKeys: [],
      owner: true,
      isAnonymous: false
    });
    if (productReview.error) throw new Error(productReview.error.message);
  }
}

Type Details

The following tables are generated from SDK TypeScript types and include nested object fields.

FeedbackFilters

Source: src/api/feedbacks.ts

FieldTypeRequired
productIdnumberOptional
pagenumberOptional
pageSizenumberOptional

CreateFeedbackInput

Source: src/api/feedbacks.ts

FieldTypeRequired
productIdnumberOptional
ratingnumberOptional
commentstringRequired

Feedback

Source: src/api/feedbacks.ts

FieldTypeRequired
idnumberRequired
user{ id: number; name: string; }Optional
user.idnumberRequired
user.namestringRequired
productIdnumberOptional
ratingnumberOptional
commentstringRequired
status'pending' | 'approved' | 'rejected'Required
createdAtstringRequired
updatedAtstringRequired

On this page